我正在尝试在 dropwizard 中的资源上创建一个操作,该操作接受一个表示,但允许它为空,即。没有来自客户端的发布数据。
目前,我必须从客户端发布“{}”,否则会返回 HTTP 415,不受支持的媒体类型。我认为这是因为我的客户端没有将内容类型标头作为内容长度 = 0 发送。
我尝试按如下方式定义资源,但从球衣中获取“生产媒体类型冲突”,因为两种方法都使用相同的路径,球衣无法区分它们:
@Path("/interview")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
@Log
class InterviewResource {
@POST
@Timed
Interview advanceNewInterview() {
// some processing...
}
@POST
@Timed
Enquiry advanceNewInterview(@Valid AdvanceInterviewRepresentation advanceInterview) {
// some processing...
}
}
关于如何表示这一点的任何想法?