休息客户端的Java?

问题:

通过JSR 311和它的实现,我们有一个强大的标准,通过Rest来暴露Java对象。然而,在客户端,似乎有一些与Apache Axis for SOAP相媲美的东西,它隐藏了Web服务,并将数据透明地传回Java对象。
如何创建Java RESTful客户端?使用HTTPConnection和手动解析结果?或专门的客户。泽西还是Apache CXR?

回答:

这是一个老问题(2008),所以现在还有更多的选择:

 

新的小孩在块上提供NIO支持(尽管我真的不认为这真的提高了像客户端这样的服务器的性能)。

 更新2016

  •   – 支持较新的HTTP协议(SPDY和HTTP2)。适用于Android。不幸的是,它不提供真正的基于反应器回路的异步选项(参见上面的Ning和HTTP组件)。但是,如果您使用较新的HTTP2协议,这不是一个问题(假设连接数是问题)。
  •   – 将根据类似于泽西和CXF扩展的接口存根自动创建客户端。使用OkHttp。
  • Apache HttpComponents 5应该具有HTTP2支持

挑选HTTP / REST客户端的警告。确保检查您的框架堆栈用于HTTP客户端,如何进行线程化,以及如果提供一个客户端,则理想地使用相同的客户端。那就是如果你使用像Vert.x或Play这样的东西,你可能想尝试使用它的支持客户端来参与框架提供的任何总线或反应器循环,否则准备好可能有趣的线程问题。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Rest clients for Java?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

21 − 14 =