Тайм-аут рестлета

1

Как изменить тайм-аут на Restlete Client get()?

Все, что мне удалось найти, это устаревший SetConnectTimeout(). Я попробовал context.getParameters().add( "socketTimeout", "1000" ); без успеха.

Теги:
client
timeout
restlet

1 ответ

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 В этом случае вручную 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/руководство /2.2/core/base/connector/.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню