2016-12-02 9 views
0

в okhttp3.internal.connection.ConnectInterceptorokhttp отправлять медленнее, чем получить и почему проверка состояния, когда не GET метод

линии 41: код происхождение:

boolean doExtensiveHealthChecks = !request.method().equals("GET");

когда я сравнить производительность между OkHttp 3.4.1 и apache httpclient.

Получ, OkHttp быстрее,

Но сообщение Метод, OkHttp более медленнее, чем HTTPClient переживайте всегда более медленнее, чем Получ OkHttp в.

Затем отлаживать исходный код и изменить код так:

boolean doExtensiveHealthChecks = false; 

наконец, метод POST OkHttp является быстрее, чем HttpClient.

Существует вопрос, почему doExtensiveHealthChecks, если нет метода «Get»?

TKS. Первый вопрос о StackOverflow.

ответ

0

Просто догадывайтесь, но GET - безопасный метод, поэтому не нужно пытаться, терпеть неудачу, а затем повторить попытку.

https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html

Для POST это имеет смысл, чтобы проверить соединение здорово, прежде чем запрос.

 Смежные вопросы

  • Нет связанных вопросов^_^