栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Spring MVC中配置自定义MediaType?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Spring MVC中配置自定义MediaType?

使用该配置,您基本上可以:

  • 使用参数或路径扩展忽略了内容协商
  • 注册“ json-> application / json”“ xml-> application / xml”“ myXml-> application / xml”作为可能的路径扩展名/参数,以协商这些媒体类型。(在此了解更多信息)
  • 告诉Spring MVC,每当HTTP客户端发送
    "Accept: */*"
    或根本不发送Accept标头时,默认ContentType应为“ application / xml”

我不认为您打算像这样处理内容协商。

您可能想要自定义HttpMessageConverters(请参见此处),例如注册一个

Jaxb2RootElementHttpMessageConverter
(如果使用JAXB)或一个
MappingJackson2XmlHttpMessageConverter
(如果使用Jackson)并使用“
application / xml”和“ myXml”媒体类型注册它们。

另外,不要忘记在RequestMapping批注的“产生”部分中添加“ myXml”-您的控制器方法应将其声明为可以产生的媒体类型,否则它将再次抛出406。

我的建议

您绝对应该使用诸如“ application / vnd.foobar.v.1.0 + xml”之类的媒体类型,因为:

  • 这与http客户端有关
  • Spring中的xml HttpMessageConverters已被注册以处理“ application / xml”和“ application / * + xml”。

在这种情况下,您可以将defaultContentType部分保留在配置中(并可能将其设置为自定义媒体类型),然后丢弃其余部分。

无论如何,您仍应在映射注释的Produces部分中声明此自定义媒体类型。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/615687.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号