Spring 3.1或更高版本@RequestMapping消耗/产生

小迈克·巴格里奥(Mike Baglio Jr.):

关于消费和生产的部分,我有一个问题@RequestMapping我有一个端点,我想同时接受JSON和XML,并在传递JSON时返回JSON,在传递XML时返回XML。为了使这项工作有效,我需要做些什么特别的事情吗?

下面列出了示例代码。

@RequestMapping(value = "/something", method = PUT, 
                consumes = {APPLICATION_JSON_VALUE, APPLICATION_XML_VALUE}, 
                produces = {APPLICATION_JSON_VALUE, APPLICATION_XML_VALUE})
public SomeObject updateSomeObject(SomeObject acct) {
    return doStuff(acct);
}

这会按照我期望的方式工作吗?还是我需要两个端点updateSomeObjectXMLupdateSomeObjectJson处理这两种情况?

谢谢,迈克

Biju Kunjummen:

Spring博客上的文章- 使用Spring MVC进行内容协商 -提供了有关内容协商如何与Spring MVC一起工作的详细信息,简而言之,如果您希望同一个端点处理XML和JSON,并且映射正确,请从本文中进行总结:

  1. 使用路径扩展-您可以将json发送到/something.json和xml,/something.xml并在返回的途中期待同样的事情

  2. 使用Accept标题,使用application/json值,application/xml并用于Content-Type指定提交的媒体类型。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章