从 RestTemplate 获取 header 数据和 object
get header data and object from RestTemplate
我正在尝试从响应 header 中获取一些身份验证值,并尝试填充 object。但我的问题是,我得到的是 header 值或填充的 object,如此处示例所示。
RestTemplate restTemplate = new RestTemplate();
String requestJson = "{ \"identifier\": \"username\", \"password\": \"pw\" } ";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.add("KEY","apikey");
HttpEntity<String> entity = new HttpEntity<String>(requestJson,headers);
Login login = restTemplate.postForObject("https://url.com",entity, Login.class);
或
HttpEntity<String> response = template.exchange("https://url.com", HttpMethod.POST, entit, Login.class);
String resultString = response.getBody();
HttpHeaders headers = response.getHeaders();
有没有办法稍后做响应=> object交换?
或者完全不同的方法来解决这个问题?
我用这段代码解决了我的问题:
ResponseEntity<Login> response = restTemplate.exchange(url, HttpMethod.POST, request, Login.class);
Login login = response.getBody();
HttpHeaders headers = response.getHeaders();
所以我的结果是登录 object 和我的 Headers 在 headers.
我正在尝试从响应 header 中获取一些身份验证值,并尝试填充 object。但我的问题是,我得到的是 header 值或填充的 object,如此处示例所示。
RestTemplate restTemplate = new RestTemplate();
String requestJson = "{ \"identifier\": \"username\", \"password\": \"pw\" } ";
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.add("KEY","apikey");
HttpEntity<String> entity = new HttpEntity<String>(requestJson,headers);
Login login = restTemplate.postForObject("https://url.com",entity, Login.class);
或
HttpEntity<String> response = template.exchange("https://url.com", HttpMethod.POST, entit, Login.class);
String resultString = response.getBody();
HttpHeaders headers = response.getHeaders();
有没有办法稍后做响应=> object交换? 或者完全不同的方法来解决这个问题?
我用这段代码解决了我的问题:
ResponseEntity<Login> response = restTemplate.exchange(url, HttpMethod.POST, request, Login.class);
Login login = response.getBody();
HttpHeaders headers = response.getHeaders();
所以我的结果是登录 object 和我的 Headers 在 headers.