redirect - JAX-RS:客户端:在遵循重定向之前拦截重定向
问题描述
我正在尝试在 JAX-RS(Jersey) 客户端实现“重定向处理程序/过滤器”。期望这个处理程序会在 Jersey 发生实际重定向之前被调用。
到目前为止,我可以找到禁用跟随重定向并实现自己的重定向过滤器,但这意味着我必须实现完整的重定向处理,包括处理循环或其他边缘情况,我试图避免并希望依赖 Jersey 实现。
我只想在实际重定向发生之前在请求中添加/更改标头或其他参数。此外,我们想要操纵的重定向很少,而让其他重定向按原样工作。
禁用重定向:
ClientBuilder
.newBuilder()
.withConfig(new ClientConfig(clientConfig))
.property(ClientProperties.FOLLOW_REDIRECTS, false)
.build();
示例重定向处理程序:
Response resp = requestContext.getClient().target(responseContext.getLocation()).request()
.method(requestContext.getMethod());
responseContext.setEntityStream((InputStream) resp.getEntity());
responseContext.setStatusInfo(resp.getStatusInfo());
responseContext.setStatus(resp.getStatus());
是否有任何指针或参考可以用来拦截重定向?
解决方案
推荐阅读
- unity3d - 预制件在起始位置相同但速度不同的圆上运动
- elasticsearch - 单个 flink 管道的多个弹性搜索接收器
- python - 熊猫根据另一个数据帧更新一个数据帧中特定列中的特定行
- elasticsearch - 在弹性搜索中使用 query_string 忽略“AND”、“OR”结构并进行字面搜索
- c++ - 成员函数调用的对象右值传播
- flutter - 颤振饼图作为一个圆圈,里面有图例
- html - SVG元素在CSS中动画时改变它的位置
- sql - MS-Access 日期比较数据类型冲突
- vue.js - 在 Vue/Webpack 构建过程中复制符号链接而不是目录
- flutter - 在屏幕之间导航时,Flutter FutureBuilder 会不必要地重建