1

でのPUSH PROMISE http/2ヘッダーの処理について少し混乱してい.NET4.6ます。

私が見る HttpResponse.PushPromiseと、2つのオーバーロードがあります:

リソースへのパスを受け入れるもの public void PushPromise(string path)-リソースが読み取られ、バイナリがクライアントに送信されると想定しています。

第二 public void PushPromise(string path, string method, NameValueCollection headers)に、それは受け入れられますがsting methodNameValueCollection headers私は理解できません。

メソッド (GET、POST などの HttpMethod を想定) とヘッダー内のPUSH PROMISEヘッダーのコレクションを渡す必要があるのはなぜですか?

4

2 に答える 2

0

応答が変化する原因となるもの (つまり、Vary 応答ヘッダー内のすべて) のヘッダーを渡す必要があります。私が見つけた最大のものは圧縮です。

元のクライアント リクエストからこれらのヘッダーを読み取り、プッシュ プロミスに含めます。次に例を示します。

var headers = new NameValueCollection { { "accept-encoding", this.Request.Headers["accept-encoding"] } };
this.Response.PushPromise("~/Scripts/jquery.js", "GET", headers);`
于 2016-08-03T22:33:47.727 に答える