问题:
在与其他系统进行交互时,客户的服务端需要这样认证,没有办法,只能java 来拼凑了。
java 代码实现如下:
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.add("Accept", "application/json");
**httpHeaders.add("Authorization", propertyUtils.getDeviceTreeToken());**
String result = getRequest(propertyUtils.getDeviceTreeUrl(), null, httpHeaders);
private String getRequest(String url, MultiValueMap<String, String> params, HttpHeaders headers) throws Exception {
SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
requestFactory.setConnectTimeout(10000);// 设置建立连接超时时间
requestFactory.setReadTimeout(10000);// 设置等待返回超时时间
RestTemplate client = new RestTemplate(requestFactory);
HttpMethod method = HttpMethod.GET;
headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(params, headers);
ResponseEntity<String> response = client.exchange(url, method, requestEntity, String.class);
return response.getBody();
}
针对于Bearer token改下写法就行:
httpHeaders.add("Authorization", "Bearer " + propertyUtils.getDeviceTreeToken());
这样修改上面的就行了。