首页  >  文章  >  Java  >  如何使用 @ResponseBody 自定义 Spring MVC 中响应的 Content-Type?

如何使用 @ResponseBody 自定义 Spring MVC 中响应的 Content-Type?

DDD
DDD原创
2024-11-01 05:15:01668浏览

How can I customize the Content-Type of a response in Spring MVC using @ResponseBody?

在 Spring MVC 中使用 @ResponseBody 自定义 Response Content-Type

在 Spring MVC 中,@ResponseBody 注解会自动添加 Content-Type 标头到 HTTP 响应。但是,默认的 Content-Type 是“application/json”。要为特定方法自定义 Content-Type,可以使用 @RequestMapping 注解的 Produces 属性。

例如,如果要返回 UTF-8 编码的纯文本响应,可以使用以下控制器方法:

@RequestMapping(value = "/gethelp", method = RequestMethod.GET,
        produces = "text/plain; charset=UTF-8")
public @ResponseBody String handleGetHelp() {
    return "Some help text";
}

在此示例中, Produces 属性指定 gethelp 方法将生成采用 UTF-8 编码的纯文本响应。

注意: 确保 StringHttpMessageConverter 在 Spring 配置中注册为消息转换器。这可以通过添加以下 bean 来完成:

<bean class="org.springframework.http.converter.StringHttpMessageConverter">
    <property name="supportedMediaTypes" value="text/plain; charset=UTF-8" />
</bean>

以上是如何使用 @ResponseBody 自定义 Spring MVC 中响应的 Content-Type?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn