@QueryParam 不在锚点('#')之后解析参数

@QueryParam not parsing parameter after anchor ('#')

我注意到来自 javax.ws.rs.QueryParam;

的 @QueryParam 注释中有一个奇怪的行为

参考下面的代码片段,当我将 url 设置为类似以下内容时:

http://host:port/services/serv123?test=OK

我可以按预期检索 'test' 的值。

但是,当我将 url 设置为类似以下内容时:

http://host:port/services/serv123#top?test=OK

@QueryParam("test") returns null.

这是我正在使用的代码。每个注释都被显式导入。

@Path("/services")
public class Services {
[...]
    @GET
    @Path("/{srvID}")
    @Produces(MediaType.TEXT_HTML)
    public ServicesView getServiceDetailPage(@PathParam("srvID") String srvId, 
                                             @QueryParam("test") String test) {
        [...]
        return new ServicesView([...]);
    }
[...]
}

我已经在 Dropwizard 0.9.1(包括 Jersey)中对此进行了测试

请注意:

我错过了什么?

而不是

http://host:port/services/serv123#top?test=OK

使用

http://host:port/services/serv123?test=OK#top

如果您希望?test=OK成为查询参数而不是锚点的一部分。