Jersey 2.x:如何在 RESTful 客户端上添加标头

2024-02-14

我已经看过了如何使用 Jersey Client API 在 RESTful 调用上添加标头 https://stackoverflow.com/questions/18342456/how-to-add-headers-on-restful-call-using-jersey-client-api,但这适用于 Jersey 1.x。

如何在 Jersey 2.21 中设置标头值(例如授权令牌)?

这是我正在使用的代码:

public static String POST(final String url, final HashMap<String, String> params)
{
    ClientConfig config = new ClientConfig();
    Client client = ClientBuilder.newClient(config);

    WebTarget target = client.target(url);

    String data = new Gson().toJson(params);

    Entity json = Entity.entity(data, MediaType.APPLICATION_JSON_TYPE);
    Invocation.Builder builder = target.request(MediaType.APPLICATION_JSON_TYPE);
    return builder.post(json, String.class);
}

在 Jersey 2.0+ 中,您可以注册一个自定义实现ClientRequestFilter https://docs.oracle.com/javaee/7/api/javax/ws/rs/client/ClientRequestFilter.html这样可以操纵标题 https://jersey.github.io/documentation/latest/filters-and-interceptors.html#d0e9470在客户端 API 将发出的请求中。

您可以通过以下方式操作标题ClientRequestContext传入的参数filter方法。这getHeaders() method https://docs.oracle.com/javaee/7/api/javax/ws/rs/client/ClientRequestContext.html#getHeaders--返回MultivaluedMap您可以在其中put你的标题。

You can register https://jersey.github.io/documentation/latest/client.html#d0e4388你的定制ClientRequestFilter和你的ClientConfig在你打电话之前newClient.

config.register(MyAuthTokenClientRequestFilter.class);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jersey 2.x:如何在 RESTful 客户端上添加标头 的相关文章

  • 如何在android上的python kivy中关闭应用程序后使服务继续工作

    我希望我的服务在关闭应用程序后继续工作 但我做不到 我听说我应该使用startForeground 但如何在Python中做到这一点呢 应用程序代码 from kivy app import App from kivy uix floatl
  • SAML 服务提供商 Spring Security

    当使用预先配置的服务提供者元数据时 在 Spring Security 中 是否应该有 2 个用于扩展元数据委托的 bean 定义 一份用于 IDP 元数据 一份用于 SP 元数据
  • org.apache.sling.api.resource,version=[2.3,3) -- 无法解析

    您好 我无法访问我的项目内容 我已经上传了从 CQ 访问内容所需的所有包 我唯一能看到的是 org apache sling api resource version 2 3 3 无法解析 这是否是异常的原因 如果是 请告诉我如何解决 中Q
  • OpenCV 中的 Gabor 内核参数

    我必须在我的应用程序中使用 Gabor 过滤器 但我不知道这个 OpenCV 方法参数值 我想对虹膜进行编码 启动 Gabor 过滤器并获取特征 我想对 12 组 Gabor 参数值执行此操作 然后我想计算 Hamming Dystans
  • 如何使用 Java 处理 Selenium WebDriver 中的新窗口?

    这是我的代码 driver findElement By id ImageButton5 click Thread sleep 3000 String winHandleBefore driver getWindowHandle drive
  • OSGi:如果不取消服务会发生什么

    这是我获取 OSGi 服务的方式 ServiceReference reference bundleContext getServiceReference Foo class getName Foo foo Foo bundleContex
  • 如何安全地解决这个 Java 上下文类加载器问题?

    我的数百名用户中只有一位在启动我的 Java 桌面应用程序时遇到问题 他只有大约三分之一的时间开始 另外三分之二的时间在启动时抛出 NullPointerException Exception in thread AWT EventQueu
  • 如何模拟从抽象类继承的受保护子类方法?

    如何使用 Mockito 或 PowerMock 模拟由子类实现但从抽象超类继承的受保护方法 换句话说 我想在模拟 doSomethingElse 的同时测试 doSomething 方法 抽象超类 public abstract clas
  • 在 S3 中迭代对象时出现“ConnectionPoolTimeoutException”

    我已经使用 aws java API 一段时间了 没有遇到太多问题 目前我使用的是库 1 5 2 版本 当我使用以下代码迭代文件夹内的对象时 AmazonS3 s3 new AmazonS3Client new PropertiesCred
  • hibernate锁等待超时超时;

    我正在使用 Hibernate 尝试模拟对数据库中同一行的 2 个并发更新 编辑 我将 em1 getTransaction commit 移至 em1 flush 之后我没有收到任何 StaleObjectException 两个事务已成
  • Calendar.getInstance(TimeZone.getTimeZone("UTC")) 不返回 UTC 时间

    我对得到的结果真的很困惑Calendar getInstance TimeZone getTimeZone UTC 方法调用 它返回 IST 时间 这是我使用的代码 Calendar cal Two Calendar getInstance
  • Java 中的“Lambdifying”scala 函数

    使用Java和Apache Spark 已用Scala重写 面对旧的API方法 org apache spark rdd JdbcRDD构造函数 其参数为 AbstractFunction1 abstract class AbstractF
  • 如何在 Java 中测试一个类是否正确实现了 Serialized(不仅仅是 Serialized 的实例)

    我正在实现一个可序列化的类 因此它是一个与 RMI 一起使用的值对象 但我需要测试一下 有没有办法轻松做到这一点 澄清 我正在实现该类 因此在类定义中添加 Serialized 很简单 我需要手动序列化 反序列化它以查看它是否有效 我找到了
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • 我可以创建自定义 java.* 包吗?

    我可以创建一个与预定义包同名的自己的包吗在Java中 比如java lang 如果是这样 结果会怎样 这难道不能让我访问该包的受保护的成员 如果不是 是什么阻止我这样做 No java lang被禁止 安全管理器不允许 自定义 类java
  • 游戏内的java.awt.Robot?

    我正在尝试使用下面的代码来模拟击键 当我打开记事本时 它工作正常 但当我打开我想使用它的游戏时 它没有执行任何操作 所以按键似乎不起作用 我尝试模拟鼠标移动和点击 这些动作确实有效 有谁知道如何解决这个问题 我发现这个问题 如何在游戏中使用
  • 具有特定参数的 Spring AOP 切入点

    我需要创建一个我觉得很难描述的方面 所以让我指出一下想法 com x y 包 或任何子包 中的任何方法 一个方法参数是接口 javax portlet PortletRequest 的实现 该方法中可能有更多参数 它们可以是任何顺序 我需要
  • Trie 数据结构 - Java [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 是否有任何库或文档 链接提供了在 java 中实现 Trie 数据结构的更多信息 任何帮助都会很棒 Thanks 你可以阅读Java特里树
  • 调整添加的绘制组件的大小和奇怪的摆动行为

    这个问题困扰了我好几天 我正在制作一个特殊的绘画程序 我制作了一个 JPanel 并添加了使用 Paint 方法绘制的自定义 jComponent 问题是 每当我调整窗口大小时 所有添加的组件都会 消失 或者只是不绘制 因此我最终会得到一个
  • 如何在 JFreeChart 中设置多个系列的线条粗细?

    我创建了很多图表 在他们每个人中我都需要打电话 renderer setSeriesStroke i new BasicStroke 2 0f 对于每个系列 renderer is chart getXYPlot getRenderer 我

随机推荐

  • Node JS 智利现行 DST 规则

    根据规范 Node JS ES5 在处理 Date 对象时应使用当前的 dts 规则 当前的意思是 现在 而不是特定的日期 这并不完美 但目前对我来说已经足够了 目前 该规则是错误的 由于智利法律的变化 简单探针 console log n
  • 如何使用 scala 将 postgreSQL 数据库连接到 Apache Spark?

    我想知道如何在 scala 中执行以下操作 使用 Spark scala 连接到 postgreSQL 数据库 编写 SQL 查询 如 SELECT UPDATE 等 来修改表 那个数据库 我知道使用 scala 来做到这一点 但是如何在打
  • 使用 JavaScript 获取 iPhone X 安全区域

    We have safe area inset left safe area inset right safe area inset top and safe area inset bottom在 CSS 中 但是我们如何使用 JavaSc
  • 使用 typescript 将消息发送到特定通道

    每当新用户加入服务器 公会 时 我想向 欢迎 文本通道发送一条问候消息 我面临的问题是 当我找到想要的频道时 我将收到类型为GuildChannel Since GuildChannel has no send 功能 我无法发送消息 但我找
  • 使用 Python、NumPy、SciPy 进行矩阵乘法的高效矩阵切片

    我想重塑 2dscipy sparse csr csr matrix 我们称其为A 到 2dnumpy ndarray 让我们称之为B A可能 gt shape A 90 10 then B应该 gt shape B 9 10 其中每 10
  • 调用带有标头的 Volley 请求时出现 UnsupportedOperationException

    我尝试向 Volley 库发出呼叫请求 我想设置标头 但收到 java lang UnsupportedOperationException 你知道为什么吗 我该如何解决这个问题 public void getAccountInfo Req
  • 从 1000 增加限制?

    当我像这样进行搜索时 my mesg ldap gt search base gt OU test DC example DC com scope gt one filter gt objectClass organizationalPer
  • Hive 中特定列的区别

    我正在运行 Hive 071 我有一个表 有多行 具有相同的列值 x y 1 2 1 3 1 4 2 2 3 2 3 1 我想让 x 列唯一 并删除具有相同 x 值的行 x y 1 2 2 2 3 2 or x y 1 4 2 2 3 1
  • 未安装 google+ 时应用程序强制关闭

    我的要求是在社交网站上分享 所以 我已经完成了 Facebook 和 Twitter 的工作 但我被困住了Google 我有以下代码可以分享Google 但是应用程序forcecloses当我开始活动时 仅当以下情况时才会发生这种情况Goo
  • 当我的应用程序在野外崩溃时,如何提高调试数据的质量?

    我的应用程序中出现了第一个 NullPointerExceptions 它显示在开发人员控制台上 当我开始在这里寻求建议时 我意识到问题是什么 但它让我想起了一些困扰我一段时间的事情 当唯一的事情时 如何尽可能轻松地调试我的代码我可以访问开
  • 删除数据框中与另一个不共同的列 (R)

    我有两个长度不同的数据帧 一个是样品 另一个是测试样品 df1 a b c d 1 0 0 0 2 0 0 1 df2 a e b c d 1 1 0 0 0 2 0 0 0 1 如何删除 df2 与 df1 不共同的列 因此 我正在寻找与
  • 计算贝塞尔样条曲线以从一个点到另一个点

    我在 X Y 旋转中有 2 个点 我需要计算平滑连接这两个点的贝塞尔样条线 二次贝塞尔曲线的集合 见图 点代表游戏中只能缓慢旋转的单位 所以从A点到B点 必须走很长的路 附图显示了一条相当夸张的弯曲路径 但你明白了 我可以使用什么公式来计算
  • ">"(大于号)CSS 选择器是什么意思?

    例如 div gt p some class Some declarations 具体是做什么的 gt 标志是什么意思 gt is the child combinator https www w3 org TR selectors chi
  • Django 跨越关系

    我已阅读文档 但仍然出现错误 我有用户为目录对象下订单 我想创建一个查询 返回具有包含特定目录项的订单的所有用户 这是我的模型 class Catalog models Model name models CharField max len
  • 如何在没有 WordPress 插件的情况下添加多个特色图像上传按钮

    如何在不使用 WordPress 插件的情况下添加第二个特色图像上传按钮 你需要添加多后缩略图 admin js您还需要添加相同的过滤器以了解详细信息请参阅下面的链接 http lifeonlars com wordpress how to
  • 如何使用 Python 访问 Windows Vista 上的文件属性?

    问题就像标题一样简单 如何使用 Python 访问 Windows 文件属性 例如日期修改 更具体地说是标签 对于我正在执行的程序 我需要获取特定文件夹中各种文件的所有标签的列表 但我不确定如何执行此操作 我有 win32 模块 但我没有看
  • 如何通过单击按钮来调用 datagridview 事件?

    我想知道如何在 C 中调用事件 实际上 我有一个 datagridview 双击事件 它使用 datagridview 中选定行的值填充 f2 的文本框 并在分配的文本框中显示 form2 和这些值 现在我想通过单击一个按钮来做到这一点 比
  • 有没有办法控制默认使用哪个隐式转换?

    假设我有这个 class String2 val x String def times Int String val builder new StringBuilder for i lt 0 until times builder appe
  • SQL中调用动态函数名

    是否可以在 SQL 中调用具有动态名称的函数 例如 SELECT functionid SELECT results FROM dbo Function functionid AS results FROM List of Function
  • Jersey 2.x:如何在 RESTful 客户端上添加标头

    我已经看过了如何使用 Jersey Client API 在 RESTful 调用上添加标头 https stackoverflow com questions 18342456 how to add headers on restful