Application Load Balancer (ALB)を使用して Web アプリケーションを AWS 環境にデプロイしたとき、Web サービス エンドポイントの一部がデータを返さず、Chrome ブラウザーがいくつかの http 呼び出しに対して次のエラーを報告しました: ERR_SPDY_PROTOCOL_ERROR
この推奨事項を見つけて、ALB 構成でHTTP/2サポートを無効にすると、すべてが機能するようになりました。
ALB でHTTP/2を無効にする必要があったのはなぜですか? ここでの根本的な問題は何ですか? HTTP/2を使用できるように、Web サービス コードを変更する必要がありますか?
アップデート
応答ヘッダーは次のとおりです。
HTTP/1.1 200
Date: Wed, 09 Jan 2019 21:39:13 GMT
Content-Type: application/json;charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Locations Reached: Data to populate locations reached map
以下の回答のいずれかで示唆されているように、原因はおそらく、ヘッダーの 1 つ (Locations Reached) の名前に無効/不正なスペースが含まれていることです。スペースがダッシュに置き換えられるようにします。