java - JAX RS 客户端 API 拦截器

标签 java jax-rs aop interceptor

当使用 JAX RS 客户端 API 时,有没有办法通过拦截器将 header 添加到请求中,而不是通过显式设置 header :

Client client = ClientBuilder.newClient();
Response response = client.target("someUrl").path("somePath").request().get();

AOP方式

最佳答案

创建一个 ClientRequestFilter :

@Provider
public class MyClientRequestFilter implements ClientRequestFilter {

    @Override
    public void filter(ClientRequestContext requestContext) throws IOException {
        requestContext.getHeaders().add("Authorization", "value");
    }
}

并在你的 Client 中注册它:

Client client = ClientBuilder.newClient().register(MyClientRequestFilter.class);

关于java - JAX RS 客户端 API 拦截器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33019983/

相关文章:

java - Spring:检查当前拦截器

Java 将数组中的值一位一位向后移

java - 使用java从另一个字符串中获取特定字符串

Java – 正则表达式 – 匹配开始和结束 curl 标签

jakarta-ee - 如何开始使用嵌入式 GlassFish 和 Java DB/Derby 对 Java EE JAX-RS 应用程序进行单元测试,最好是在没有 Maven 的 NetBeans 中?

aop - 面向方面的编程示例

java - 用 Java 分解 MP3

jersey - Jersey :给定无效的请求正文时,返回400错误而不是500

java - Java 类 java.util.ArrayList 的消息体编写器

c# - 内核的组件容器中没有注册过这样的组件