我有一种方法,我想在其中设置响应标头缓存控制和编译指示:-
public String addUser(@Valid User user, BindingResult bindingResult)
{
if(bindingResult.hasErrors())
{
bindingResult.getFieldError();
return"edit";
}
return "redirect:/welcome/profile/"+user.getName();
}
在这种方法中,我想设置缓存控制和编译指示,就像我们在简单的 servlet 代码中使用 HttpservletResponse 调用 setHeader 方法一样:-
response.setHeader("Cache-Control","no-cache,no-store,must-revalidate");
response.setHeader("Pragma","no-cache");
response.setDateHeader("Expires", 0);
我搜索了 spring 文档,找不到任何直接的方法,但我发现了这个:-
@RequestMapping("/something")
public ResponseEntity<String> handle(HttpEntity<byte[]> requestEntity) throws UnsupportedEncodingException
{
String requestHeader = requestEntity.getHeaders().getFirst("MyRequestHeader"));
byte[] requestBody = requestEntity.getBody();
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.set("MyResponseHeader", "MyValue");
return new ResponseEntity<String>("Hello World", responseHeaders, HttpStatus.CREATED);
}
但我不知道如何使用它