【发布时间】:2014-07-01 23:45:57
【问题描述】:
如何更改 Restlet 客户端 get() 的超时?
我所能找到的只是过时的SetConnectTimeout()。我试过context.getParameters().add ( "socketTimeout", "1000" ); 没有成功。
【问题讨论】:
标签: java timeout client restlet
如何更改 Restlet 客户端 get() 的超时?
我所能找到的只是过时的SetConnectTimeout()。我试过context.getParameters().add ( "socketTimeout", "1000" ); 没有成功。
【问题讨论】:
标签: java timeout client restlet
基本上,这是通过配置客户端连接器(org.restlet.Client 类)来完成的:
client.context.getParameters().add ( "parameter", "value" );
我看到两个不同的上下文,因此有两种获取客户端连接器的方法。
您正在org.restlet.Component 容器内运行您的客户端调用
在这种情况下,配置组件托管的通用客户端连接器:
Component c = new Component();
Client client = c.getClients().add(Protocol.HTTP);
client.getContext().getParameters().add ( "parameter", "value" );
您没有在 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/。
【讨论】: