Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当多个端点映射到同一路径时,Spring MVC默认MIME类型_Java_Spring_Spring Mvc_Spring Boot - Fatal编程技术网

Java 当多个端点映射到同一路径时,Spring MVC默认MIME类型

Java 当多个端点映射到同一路径时,Spring MVC默认MIME类型,java,spring,spring-mvc,spring-boot,Java,Spring,Spring Mvc,Spring Boot,我在控制器中有两个端点映射到具有不同MIME类型的相同路径(控制器的根路径) @RequestMapping(method = RequestMethod.GET, produces = {"application/a+json"}) public ResponseEntity<URI> methodA() { } @RequestMapping(method = RequestMethod.GET, produces = {"application/b+json"}) publi

我在控制器中有两个端点映射到具有不同MIME类型的相同路径(控制器的根路径)

@RequestMapping(method = RequestMethod.GET, produces = {"application/a+json"})
public ResponseEntity<URI> methodA() {
}

@RequestMapping(method = RequestMethod.GET, produces = {"application/b+json"})
public ResponseEntity<URI> methodB() {
}
@RequestMapping(method=RequestMethod.GET,products={“应用程序/a+json”})
公共响应方法A(){
}
@RequestMapping(method=RequestMethod.GET,products={“应用程序/b+json”})
公共响应方法B(){
}
当没有
Accept
头与请求一起发送时,响应类型始终为
application/a+json


默认情况下,
springmvc
是如何选择的?经过一些试验,我的观察是,它是根据字母顺序选择的(MIME类型以
a
开头,而不是以
b
开头),但我没有找到任何相关文档。这就是它的工作原理吗

即使您看到一些订单,我也建议不要依赖它

相反,请定义另一个不声明
生成
的方法,这样您就可以肯定地知道没有发送
接受
,而不是:

应用程序/a+json一起发送或根本不发送


这种第三种方法实际上什么也做不了,它可以委托给您已经拥有的任何东西,例如最初记录请求

@Eugene在这种情况下,响应类型为
application/json
,因此这确实是一个被调用的响应。我想这是一个暂时可以接受的解决方法。我真正想要的是: