当前位置: 首页 > news >正文

金融品牌网站设计学校网站建设工作会议

金融品牌网站设计,学校网站建设工作会议,网站安全制度体系的建设情况,北京西站进站最新规定webresource昨天#xff0c;在使用Jersey WebResource类进行HTTP调用时遇到了一个奇怪的问题#xff1a;似乎我设置的标头在执行HTTP调用时被忽略了。 提前阅读。 我试图实现的目标是调用REST Api从我们的应用程序中获取一些数据。 为此#xff0c;我使用了Jersey客户端 在使用Jersey WebResource类进行HTTP调用时遇到了一个奇怪的问题似乎我设置的标头在执行HTTP调用时被忽略了。 提前阅读。 我试图实现的目标是调用REST Api从我们的应用程序中获取一些数据。 为此我使用了Jersey客户端 显然我还必须转发接收到的授权令牌以便在目标应用程序上对用户进行身份验证。 不了解详细的Jersey Api我做了以下事情不完全是但根据本文内容进行了说明 WebResource resource Client.create(new DefaultClientConfig()).resource(http://myapp.org/api/v1/data); resource.accept(MediaType.APPLICATION_JSON); resource.type(MediaType.APPLICATION_JSON); resource.header(HttpHeaders.AUTHORIZATION, Negotiate token);return resource.get(String.class); 但是 Negotiate令牌没有被附加至少这是我在收到“ 401授权被拒绝”响应时明确注意到的。 在我的Apache上记录HTTP请求进一步强调了我的假设。 作为尝试我将代码稍微重写为以下内容 return Client.create(new DefaultClientConfig()).resource(http://myapp.org/api/v1/data).accept(MediaType.APPLICATION_JSON).type(MediaType.APPLICATION_JSON).header(HttpHeaders.AUTHORIZATION, Negotiate token).get(String.class); ..嘿它成功了 WTF 这是怎么回事 建造者模式 最初看起来很疯狂但是当您看看如何在com.sun.jersey.api.client.WebResource类上实现accept(...)时这会变得更加清晰 ... Override public Builder accept(String... types) {return getRequestBuilder().accept(types); } ... 每次您都会获得一个新的Builder对象 这就是为什么它不起作用。 因此您不必像上面的错误版本那样编写它 WebResource resource Client.create(new DefaultClientConfig()).resource(http://myapp.org/api/v1/data);WebResource.Builder builder resource.accept(MediaType.APPLICATION_JSON); builder.type(MediaType.APPLICATION_JSON); builder.header(HttpHeaders.AUTHORIZATION, Negotiate token);return builder.get(String.class); 注意第一个调用resource.accept()返回Builder对象随后对type()和header()任何调用都直接在该Builder实例上进行。 您甚至可以反转调用顺序例如先调用resource.type(..) 然后accept等等。 为什么 因为WebResource.Builder和WebResource本身都实现相同的接口RequestBuilder 只是WebResource的实现创建了一个新的Builder对象而Builder的实现实际上将传递的信息添加到了元数据集合中。 结论 Builder模式是通过隐藏实现细节尤其是在Java中来简化对象实例创建的一种常用方法。 通常您调用一系列向您的对象添加信息的方法以最终调用build()方法该方法返回所需的实例。 WebResource类完全隐藏了这一点。 现在由于已经很长时间没有使用Java进行编码了所以我不确定WebResource实现Builder模式的方式是否是常见的方式但是我发现它会分心并且可能导致讨厌的错误。 至少我花了几个小时才能弄清楚为什么我的身份验证方案不起作用。 翻译自: https://www.javacodegeeks.com/2015/05/jersey-webresource-header-dont-get-appended.htmlwebresource
http://www.zqtcl.cn/news/722337/

相关文章:

  • 厦门的服装商城网站建设语种网站建设
  • 云服务器怎么做网站东莞黄江网站建设
  • 地方网站模板德清县新巿镇城市建设网站
  • 昆明传媒网站建设模板兔自用WordPress
  • 高企达建设有限公司网站青村网站建设
  • 网站设计公司服务连锁品牌网站建设
  • 石家庄桥西网站制作公司wordpress 使用插件下载
  • 深圳外贸建站网络推广哪家好制造业小程序网站开发
  • 电子商务网站开发步骤宁波制作网站知名
  • 网站建设所需网站是别人做的 ftp账号吗
  • 网站集约化建设情况的汇报做网站为什么要买网站空间
  • 专业定制网站开发公司中堂东莞网站建设
  • 如何提交网站给百度建立类似淘宝的网站
  • 苏州企业建站公司网站建设属于广告费吗
  • 做网站找企业信息管理平台
  • 泉州企业制作网站网站建设竞价托管外包
  • 如何建立电子商务网站网站制作地点
  • 网站建设设计目的memcached wordpress
  • 潍坊作风建设年网站上海到北京火车时刻表查询
  • 网站建设 项目要求手机软件app
  • 什么是做网站wordpress 七牛视频
  • 家乡网站建设策划书angular做的网站
  • 土豆网网站开发源代码thinkphp5做的网站
  • lng企业自建站wordpress 分页 美化
  • 手机版网站如何做新闻类网站怎么做百度推广
  • 网站开发工程师 上海合肥网站到首页排名
  • 商城网站后续费用请人代做谷歌外贸网站
  • 汽车网站有哪些3d家装效果图制作软件
  • 荆门做网站公众号的公司网站百度不收录的原因
  • 专门做羽毛球的网站福州seo网站排名