Обработка перехода HTTP / 2 в okhttp4

#okhttp #http2

#охттп #http2

Вопрос:

Я использую okhttp4 4.9.0 для отправки push-уведомлений на сервер APNs Http / 2. Вызов APNs выполняется синхронно.

Онлайн-документация от Apple содержит следующее:

Если APNs решает прервать установленное соединение HTTP / 2, он отправляет ИСХОДЯЩИЙ фрейм

Как мне справиться с этим в okhttp4?

 try {
    okHttpClient.newCall(request).execute().use { response -> println(response.code)  }
} catch(ioException: IOException) {
    //Is this the place to handle GOAWAY?          
} 
 

Ответ №1:

На практике вам никогда не нужно беспокоиться о фреймах перехода с помощью OkHttp. Если один из них будет получен, он просто создаст новое соединение при следующем запросе.

Комментарии:

1. Стоит отметить, что мы отбрасываем полезное сообщение об ошибке, которое отправляет APNs, потому что // TODO: регистрирует отладочные данные

2. Спасибо @jesse-wilson. Это где-нибудь задокументировано? Пожалуйста, пришлите мне ссылку на него.