【问题标题】:Restlet timeout休息超时
【发布时间】:2014-07-01 23:45:57
【问题描述】:

如何更改 Restlet 客户端 get() 的超时?

我所能找到的只是过时的SetConnectTimeout()。我试过context.getParameters().add ( "socketTimeout", "1000" ); 没有成功。

【问题讨论】:

    标签: java timeout client restlet


    【解决方案1】:

    基本上,这是通过配置客户端连接器(org.restlet.Client 类)来完成的:

    client.context.getParameters().add ( "parameter", "value" );
    

    我看到两个不同的上下文,因此有两种获取客户端连接器的方法。

    1. 您正在org.restlet.Component 容器内运行您的客户端调用 在这种情况下,配置组件托管的通用客户端连接器:

      Component c = new Component();
      Client client = c.getClients().add(Protocol.HTTP);
      client.getContext().getParameters().add ( "parameter", "value" );
      
    2. 您没有在 org.restlet.Component 容器内运行客户端调用 在这种情况下,手动实例化客户端连接器并将其设置为 ClientResource

      Client client = new Client(new Context(), Protocol.HTTP);
      client.getContext().getParameters().add ( "parameter", "value" );
      
      ClientResource cr = new ClientResource("http://example.com");
      cr.setNext(client);
      

    最后,要设置的可用参数列表取决于您使用的客户端连接器的类型(内部连接器,基于httpclient 等) 你可以看看这个页面http://restlet.com/learn/guide/2.2/core/base/connectors/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-24
      • 2014-09-22
      • 2022-01-13
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 2011-07-07
      • 2016-11-09
      相关资源
      最近更新 更多