我正在使用 Spring Boot 版本 2.1.3 并尝试使用 RestTemplate 进行休息调用。请检查下面的代码。
final String uri = "https://devserver.slm.com/api/now/table/cmdb_ci_business_app";
RestTemplate restTemplate = new RestTemplate();
String plainCreds = "devTest:DevTest123";
byte[] plainCredsBytes = plainCreds.getBytes();
byte[] base64CredsBytes = Base64.encodeBase64(plainCredsBytes);
String base64Creds = new String(base64CredsBytes);
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Basic " + base64Creds);
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);
ResponseEntity<String> response = restTemplate.exchange(uri, HttpMethod.GET, entity, String.class);
log.info("Result output is: "+ response.getBody());
执行关于代码时,我在终端中得到以下输出。
[INFO ] 2020-07-01 18:12:42.906 [scheduling-1] ConsumingRest - Result output is: {"result":[{},{},{},{},{},{},{},{},{},{},{},{},{},{},{}]}
问题是我得到空输出,而如果我用 Postman 运行相同的 API,我会得到数据。谁能帮我弄清楚我在哪里犯了错误?
这是我使用 Postman 获得的相同 JSON 数据。
{
"result": [
{
"number": "APM013",
"sys_created_on": "2019-09-03 14:16:52",
"name": "Integration",
"business_id": "PA913",
"routine_id": "4303"
},
{
"number": "AP014",
"sys_created_on": "2019-09-03 14:16:54",
"name": "AC Equipement",
"business_id": "PA914",
"routine_id": "1558"
}
]}
问候,丹麦