在我的REST HTTP调用的Spring-boot项目中,我正在使用org.springframework.web.client.RestTemplate。
问题在于它正在缓存响应,这意味着当我第一次调用它时,我得到了正确的响应,但当我更新与当前API相关的服务器上的数据时以及当我为第二个调用相同的API时时间它仍然返回旧的响应,所以它可能从缓存中取出ResponseEntity<T>
?我不确定..每次调用相同的API时如何获取最新版本的响应?
以下是我如何进行HTTP调用
public <T> ResponseEntity<T> doQueryApi(String url, HttpMethod httpMethod, Object anyObject, HttpHeaders requestHeaders, Class<T> responseType) throws RestClientException {
HttpEntity requestEntity = new HttpEntity(anyObject, requestHeaders);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<T> responseEntity = restTemplate.exchange(url, httpMethod, requestEntity, responseType);
return responseEntity;
}
}
答案 0 :(得分:1)
您可以尝试以这种方式强制请求标头中的非缓存请求:
<div ng-class="{'checkedClass': vm.siteLoadedSuccess, 'uncheckedClass': !vm.siteLoadedSuccess}">
我有类似的问题而且工作正常。