a L*_*ner 6 content-type spring-mvc
如何HttpServletResponse object在我的spring控制器中获取方法,以便我的应用程序与Http API保持松散耦合?
谢谢...
编辑:其实我想要的是在我的控制器中设置HttpServletResponse对象的ContentType.春天为此提供了任何方式,而没有将HttpServletResponse对象作为控制器方法中的参数?
ska*_*man 10
我可以看到两个选项:
如果您想要的内容类型是静态的,那么您可以将其添加到@RequestMapping例如
@RequestMapping(value="...", produces="text/plain")
Run Code Online (Sandbox Code Playgroud)
但这仅在HTTP请求在其Accept标头中包含相同内容类型时才有效.请参见16.3.2.5可生成的介质类型.
或者,使用ResponseEntity例如
@RequestMapping("/something")
public ResponseEntity<String> handle() {
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.setContentType(new MediaType("text", "plain"));
return new ResponseEntity<String>("Hello World", responseHeaders, HttpStatus.CREATED);
}
Run Code Online (Sandbox Code Playgroud)
MediaType还有一些常见的mime类型定义为常量,例如MediaType.TEXT_PLAIN.
只需将其作为参数传递,例如
@RequestMapping( value="/test", method = RequestMethod.GET )
public void test( HttpServletResponse response ) { ... }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12130 次 |
| 最近记录: |