假设我有一个控制器,该控制器具有各种终结点(GET / POST / PUT / DELETE),并且通常它们都产生和使用JSON,所以我这样做:
@RestController
@RequestMapping(value=["/some/base/path"], produces = [MediaType.APPLICATION_JSON_UTF8_VALUE], consumes = [MediaType.APPLICATION_JSON_UTF8_VALUE])
public class SomeController {
...
}
但是事实证明,我的@GetMapping
不使用JSON(并且我不想强迫调用者为Content-Type: application/json
请求设置GET
。 @GetMapping
,是要清除/清空在类级别设置的consumes=
值还是要避免在类中的所有方法上重复使用consumes
属性?
我已经尝试设置@GetMapping(value=["/some/path"], consumes = [])
,但没有任何运气。对于上下文,我正在从Jersey注释转换为spring rest控制器样式注释,并且发现这是行为上的烦人差异(设置类级别@Consumes
注释不会针对{{1 }} s。而且,只是在寻找一种优雅的方式来反映现有行为,而无需在整个位置都克隆消费属性。
答案 0 :(得分:0)
对于您的情况,您需要删除消耗部分。我的意思是只使用农产品。例如:
@GET
@Produces("application/json")
@Path("/{oid}")
public Book getBook(@PathParam("oid") String oid) {
return bookService.getBook(oid);
}
或检查以下网址: https://dzone.com/articles/spring-boot-building-restful-web-services-with-jersey
答案 1 :(得分:0)
我现在遇到了您的问题。请尝试使用以下解决方案,并参考此链接可能会有所帮助
<Example iconName = 'IconHome' color = 'Focused'/>