gpt4 book ai didi

java - Spring 3.1 或更高版本 @RequestMapping 消费/生产

转载 作者:IT老高 更新时间:2023-10-28 13:48:41 26 4
gpt4 key购买 nike

我有一个关于 @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 来处理这两种情况?

谢谢,迈克

最佳答案

来自 Spring 博客的文章 - Content Negotiation using Spring MVC - 提供有关 Spring MVC 如何使用内容协商的详细信息,简而言之,如果您希望相同的端点处理 XML 和 JSON,您的映射是正确的,从文章中总结:

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

  2. 使用 Accept header ,使用 application/jsonapplication/xml 的值并使用 Content-输入指定提交的媒体类型。

关于java - Spring 3.1 或更高版本 @RequestMapping 消费/生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26471225/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com