【问题标题】:How to make restful calls from server?如何从服务器进行安静的调用?
【发布时间】:2011-10-19 17:06:45
【问题描述】:

嗨,我有一个安静的项目,我从客户端打了休息电话。但是对于一个案例,我需要从服务器端进行安静的调用。我该怎么做?

【问题讨论】:

  • 你的意思是调用另一个服务器?而不是给客户,我希望。

标签: java restful-url wcf-rest restful-architecture


【解决方案1】:

正如@Jonas 提到的,使用 HttpClient。实际上,在这种情况下,客户端和服务器之间没有区别。您的服务器是另一台服务器的客户端。

但要小心:

如果您在 Java EE 环境中,您不需要自己打开套接字(至少来自 EJB)。 “正确”的解决方案是使用 JCA 连接到其他系统。我曾经实现过 JCA 适配器:它并不难,但需要一些努力。

可能更简单的解决方案是将打开套接字的代码放入 servlet,例如一个 servlet 通过 HTTP 转换为另一个(在不同的服务器上运行)。我认为 Java EE 规范并没有强烈禁止它。

【讨论】:

    【解决方案2】:

    可以在服务器代码中使用 JAX/RS 客户端库。

    我的blog 有更多细节,但这里是相关代码。我正在使用 Apache Wink。

    Resource editionResource = libraryClient.resource( 
                     "http://localhost:9085/LibraryWink/library/editions” 
                     );
    
    BookEdition theEdition = new BookEdition( 
              /* title, isbn etc */ 
              );
    
    ClientResponse response = editionResource  
       .contentType(MediaType.APPLICATION_JSON)  
       .accept(MediaType.APPLICATION_JSON)                     
       .post(theEdition);
    

    【讨论】:

      【解决方案3】:

      您可以为此使用Apache HttpClient 库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-31
        • 1970-01-01
        • 2016-01-21
        • 2017-06-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多