java在ClientRequestFilter中附加查询参数
我只需要将查询参数附加到传出请求上。(JavaEE7.0,JAX-RS2.0)
具体来说,我目前使用的是RESTeasy客户端3.0.14版,因此我使用奇特的接口代理系统进行调用。我试图制作这样的东西:
myapplication/api/path?timestamp=000
与:
@Provider
public class MyRequestFilter implements ClientRequestFilter {
@Context
private HttpServletRequest servletRequest;
public void filter(ClientRequestContext requestContext) throws IOException {
servletRequest.getParameterMap().put("timestamp", new String[]{
String.valueOf(new Date().getTime())
});
}
}
我确保我也在client.register(MyRequestFilter.class)
注册了它。请随意提问。谢谢
# 1 楼答案
归功于@peeskillet
从
requestContext
重新生成URI,如下所示:现在,您可以使用
再次验证在创建REST客户端时是否注册了它