0
假设我有两个端点看起来像这样的:基于Accept头进行Jersey端点仲裁:什么时候没有给出Accept头?
@GET
@Path("/blah")
@Produces(MIME_TYPE_1)
public Thing getThing() {
....
}
@GET
@Path("/blah")
@Produces(MIME_TYPE_2)
public OtherThing getOtherThing() {
....
}
这都非常好,系统会根据该Accept
头客户端发送这些方法调用仲裁。
我遇到的问题是,如果客户端完全没有关闭Accept
头,我(出于某种原因)得到第二个方法被调用,我希望它是第一个。
还有一个额外的复杂因素,那就是它会自动提供到Swagger文档中,而且我不希望在文档中出现额外的MIME类型,所以我不想(例如)将*/*
添加到第一种方法接受的类型。
(这是使用Dropwizard和泽西1.x中,虽然我听到基于新泽西2.x的解决方案仍然感兴趣,这是我们可能很久以前升级。)
您_might_能够过滤请求和修改'Accept'头泽西查询之前。我认为它不适用于'ContainerRequestFilter',但它可能与'ServletFilter'一起使用。 – condit