問題タブ [transfer-encoding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4327 参照

c - HTTPチャンク転送エンコーディング応答の解析

チャンクタイプのHTTP転送を解析する必要があるクライアントを開発しています。私は次のようにエラーを理解しようとして壁に頭をぶつけました。誰かが私のエラーをもう少し早くキャッ​​チできるかもしれないなら、それをいただければ幸いです。問題を要約すると、クライアントがすべてのチャンクを受信して​​いないように見えるため、残りのプロセスが台無しになります。前もって感謝します!

0 投票する
2 に答える
87692 参照

http - Transfer-Encoding: gzip と Content-Encoding: gzip の比較

やるかどうかというと、現在の状況はどうですか?

または

たとえば、帯域幅が制限されているクライアントが、圧縮された応答を受け入れる意思があることを通知しサーバーが圧縮するかどうかを最終的に決定できるようにしたい場合。

後者は、たとえば Apache の mod_deflate と IIS が圧縮を処理する場合に行うことです。圧縮するコンテンツのサイズに応じて、追加のTransfer-Encoding: chunked.

Vary: Accept-Encodingまた、すでに問題を示唆しているも含まれます。Content-Encodingエンティティの一部であるように見えるため、Content-Encoding金額をエンティティの変更に変更すると、つまり、Accept-Encodingヘッダーが異なると、たとえば、キャッシュは、それ以外の場合は同一のエンティティのキ​​ャッシュされたバージョンを使用できなくなります。

私が見逃した明確な答えはありますか(そして、それはいくつかのApacheニュースグループの長いスレッドのメッセージ内に埋もれていません)?

私の現在の印象は次のとおりです。

  • 実際、Transfer-Encoding は、既存のサーバーとクライアントの実装によって Content-Encoding でほとんど行われていることを行う正しい方法です。
  • ETagContent-Encoding は、そのセマンティックな意味合いのために、いくつかの問題を抱えています (サーバーが応答を透過的に圧縮する場合、サーバーは何をすべきでしょうか?)
  • その理由はニワトリと卵です: サーバーがサポートしていないため、ブラウザーがサポートしていないため、ブラウザーがサポートしていません。

したがって、正しい方法は a になると想定していますTransfer-Encoding: gzip(または、さらに体をチャンクすると、 になり Transfer-Encoding: gzip, chunkedます)。Varyそして、それはトランスポートレベルのものであるため、その場合、またはETag他のヘッダーに触れる理由はありません。

今のところ、私は の「ホップバイホップ」性についてはあまり気にしていません。これはTransfer-Encoding、プロキシが圧縮解除され、圧縮解除された状態でクライアントに転送される可能性があるためです。ただし、元のリクエストに適切なAccept-Encodingヘッダーが含まれている場合、プロキシはそれをそのまま(圧縮して)転送することもできます。これは、私が知っているすべてのブラウザーの場合です。

ところで、この問題は少なくとも 10 年前のものです。たとえば https://bugzilla.mozilla.org/show_bug.cgi?id=68517を参照してください。

これに関する説明をいただければ幸いです。標準に準拠していると見なされるものと、実用的であると見なされるものの両方の観点から。たとえば、透過的な「Content-Encoding」のみをサポートする HTTP クライアント ライブラリは、実用性に反する議論になります。

0 投票する
1 に答える
495 参照

box-api - Transfer-Encoding Chunked Box-API

-H "transfer-encoding: chunked"が Box.net でサポートされているかどうかを知りたいですか?

0 投票する
1 に答える
757 参照

servicestack - 転送エンコーディングを無効にする方法:ServiceStack用にチャンク化

HTTPヘッダーの応答にtransfer-encoding:chunkedを追加せず、このエンコードタイプを無効にするようにServiceStackを構成する方法はありますか?

0 投票する
0 に答える
384 参照

http - HTTP 1.1 Transfer-Encoding:chunkedは、毎回新しいTCPソケットを開きます

使用したプロトコル:HTTP 1.1

ヘッダーには「Transfer-Encoding:chunked」が含まれます

'Transfer-Encoding:chunked'を含む後続のリクエスト(同じサーバーへの同じリクエスト)を送信すると、リクエストごとに新しいTCPソケットが開かれているのがわかります。

同じソケットをリクエストに使用しないでください。ソケットが毎回終了するのはなぜですか?

注: フィドラーを使用して送信されたリクエスト

0 投票する
1 に答える
562 参照

php - Content-Transfer-Encoding に関する問題

ここで問題があります。添付ファイルを送信するための mail() PHP スクリプトを作成しました。通常は通常のメール プロバイダーで送信します。問題は、特定の文字数までしかファイルを送信できないことです。たとえば、「新しいテキスト ドキュメント」という名前のファイルを送信できますが、「Microsoft Word の新しいドキュメント (3)」という名前のファイルを送信しようとすると、メールに届きません。

誰かがなぜこれが起こるのか教えてもらえますか?

添付ファイルを送信しますが、ファイルの名前が 10 文字の場合にのみ送信されますが、15 文字の場合は送信されません

0 投票する
3 に答える
2436 参照

python - Transfer-encoding: chunked をどのようにレンダリングする必要がありますか?

チャンク エンコーディングを使用して転送されたデータをブラウザがレンダリングする場合、ブラウザは、データをエンコードするためにチャンク サイズと CRLF を追加せずに元のデータをレンダリングする必要があります。正しいですか?

このコードを例として使用します。

https://gist.github.com/josiahcarlson/3250376

私のブラウザ (Chrome と FF) のレンダリング

チャンクサイズが表示されるとは思っていませんでした。

ブラウザでエンコーディング情報なしでデータをレンダリングする必要がありますか?

0 投票する
2 に答える
1366 参照

c# - Transfer-Encoding:WindowsPhoneでチャンク化

Transfer-Encodingでサーバー応答があります:チャンク

jsonデータの前にそのc7チャンクサイズを参照してください。

を使用して、Windows Phoneでチャンクのない生の応答ストリームを読み取るにはどうすればよいHttpWebResponseですか?


ヒント:サーバーでチャンク出力を無効にするには、HTTP/1.0プロトコルバージョンを指定する必要があります。しかし、Windows PhoneまたはSilverlightProtocolVersionのクラスにはプロパティがないため、その方法がわかりません。HttpWebRequest

0 投票する
1 に答える
2695 参照

python - urllib2 python (転送エンコーディング: チャンク)

次の python コードを使用して、html ページをダウンロードしました。

このようなページの場合、エラーなしで URL が開きますが、html ページの一部しか出力されません!

次の行で、html ページの http ヘッダーを見つけることができます。問題は「Transfer-Encoding: chunked」によるものだと思います。

urllib2 は最初のチャンクだけを返すようです! 残りのチャンクを読むのに苦労しています。残りのチャンクを読み取るにはどうすればよいですか?