作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想知道是否根据每个方法RestEndPoint
调用在控制器中映射到两个不同方法的相同PRODUCES
。
下面描述了我要的是什么?
@Controller
ContollerClass {
@GetMapping(value = "/v1/v2/{userID}", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<byte[]> getUser( {
// Rest of code
}
@GetMapping(value = "/v1/v2/{userID}", produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)
public ResponseEntity<byte[]> getBinUser( {
// Rest of code
}
}
GET
请求,并且完全相同的
Rest end point
。唯一的区别是它们返回的
return type
。
browser
,
curl
,
postman
等)时,如何区分将实际调用哪个端点?与
produces
有什么关系吗?如果是这样,客户端必须调用什么?是否需要提供
accept
HTTP标头?
最佳答案
您可以根据某些参数来区分它们,例如你可以尝试像
@GetMapping(value = "/v1/v2/{userID}", produces = MediaType.APPLICATION_JSON_VALUE, params = "paramForGetUser")
public ResponseEntity<byte[]> getUser(@RequestParam String paramForGetUser){
// Rest of code
}
@GetMapping(value = "/v1/v2/{userID}", produces = MediaType.APPLICATION_OCTET_STREAM_VALUE, params = "paramForGetBinUser")
public ResponseEntity<byte[]> getBinUser(@RequestParam String paramForGetBinUser){
// Rest of code
}
关于java - 具有相同RestEndPoint的两种不同方法:如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59249620/
我是一名优秀的程序员,十分优秀!