問題タブ [chunked-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.
http - HTTP Content-Length および Chunked Transfer-Encoding。2GBの制限はありますか?
Content-Length
2GBまたは4GBを超えるHTTP は最新の Web サーバーでサポートされていますか?
HTTP Chunked Transfer Encoding のチャンクはどうですか? 個々の HTTP チャンクの長さが2GBを超えることはできますか?
32-bit integers
または64-bit integers
をコードで使用することを知る必要があります。
http - 適切なチャンク転送エンコーディング形式
仕様と比較したチャンク データの適切な形式と、Twitter がアクティビティ ストリームから返すものに興味があります。
curl を使用して Twitter からチャンク ストリームを取得しようとすると、curl は次のように報告します。
ウィキペディアの情報と HTTP 仕様 (基本的には \r\n\r\n) に基づいてチャンク データ エミッターを作成しました。結果は次のようになります。
違いは、Twitter が整数としてチャンクの本体の一部として文字列の長さを含めているように見えることです (そこにある必要がある Hex の値と併せて)。何かを見逃していません。Twitter のドキュメントでは長さの値について言及されておらず、例にも記載されていません。また、仕様にも記載されていません。
ios - チャンク転送エンコーディングのための NSURLConnection の代替手段は何ですか?
これに関連する他の質問を確認しましたが、これはもう開発されていないため、唯一の答えは「使用するASIHTTPRequest
」です。SDK で作業しているときに、人々が使用している代替手段を尋ねたかったのですが、多くの奇妙な動作に遭遇しましたNSURLConnection
サーバーからデータを受信するとき。
NSURLConnection
チャンク エンコーディングの応答をうまく処理できないという事実まで追跡しました。または、少なくともNSURLConnection と "chunked" transfer-coding のこの質問を読みました
私たちが話していた開発者の中には、iOS 5 で改善されたと言っている人もいますが、SDK が少なくとも iOS 4.3 と下位互換性があることを確認する必要があります。
NSURLConnection
これが事実上の問題であり、人々がそれをどのように扱っているかを確認したい.
これまでに見つけたすべての代替案はに基づいNSURLConnection
ており、同じ欠陥があると想定しています。ASIHTTPRequest
よりも少し低いベースであるため、実際には機能しましたNSURLConnection
が、サポートされなくなったことを知って代替手段を探していました。
調べた他のライブラリの
リストは次の
Restkit
とおり
ShareKit
です
。
LRResty
AFNetworking
TTURLRequest
ここに同様の質問があることは承知していますRESTKit は ASIHTTPRequest の適切な代替品ですか? ここではASIHTTPRequest の代替案ですが、どちらのソリューションも NSURLConnection に基づいています。
編集:投稿の冒頭で間違った質問を指摘したことに気付いたので、更新しました。それは 2008 年のスレッドを指しています。同様のスレッドを見たことがありますが、最近のものはありません。
vb.net - vb.netでhttpチャンクエンコーディングを介してmp3を送信する
こんにちは、チャックされたエンコーディングを使用して、http 経由で mp3 データを送信しようとしています。mp3 は後で (mp3 ピースの) ライブ ストリームになるので、コンテンツの長さはわかりません。
これは、ブラウザでアクセスすると再生できないコードです....ヘッダーファイルファイルがまったく再生されないことを認識していますが。
私が間違っているところに誰かアイデアがありますか?
HTTP アナライザーでキャプチャしている応答の最初の数行:
http - gzip +チャンク:解凍する前にファイル全体がダウンロードされるのを待つ必要がありますか?
答えはかなり確信していますが、誰かに確認してもらいたいです。
HTTPヘッダーでgzipが使用されている場合、ファイルの一部のみを解凍する方法はありません。データを取得するために解凍する前に、ファイル全体をダウンロードする必要があります。
右 ?
たとえば、次のようなコードで最初の100バイトを取得した場合:
この時点では解凍できません。
ありがとう。
php - チャンク エンコーディングで投稿を受信すると、PHP は $_POST 経由で POST データを読み取ることができません
異なるプロバイダーとの共有ホスティングで実行されている 2 つのサーバーがあります。1 つは Apache 2.2.16 で PHP 5.2.9 を実行しており、もう 1 つは PHP 5.2.17 を実行しています。
両方のサーバーのスクリプトは、チャンク エンコーディングで POST を受信しない限り、アプリケーションで正常に動作します。
これが発生すると、モバイル クライアントからよくあることですが、PHP は を介して投稿データにアクセスできないようです$_POST
。さらに、上記の最初のサーバーは、5/6 日前に更新が行われたように見えるまで、チャンク エンコーディングで正常に動作していました (ただし、ホストはこれを確認したくない/確認できません)。
PHPまたはApacheのどの設定がこれに影響するかを誰かが提案できますか?
PS 私は両方のホストからの技術サポートと継続的かつ長期にわたる議論を行っていますが、それは実を結んでいないようです.
ruby-on-rails - content-disposition と一緒にチャンク転送を使用する
次のヘッダーを使用して、次のような一般的なパスからダウンロードをクライアントにプッシュしています/controller_name
。
ただし、すべてのデータがダウンロードされた後、ブラウザは「名前を付けて保存」ダイアログを表示しているようです。ダウンロードが開始されるとすぐにダイアログを表示する方法はありますか?
c - サーバーからのチャンクされた応答を処理する方法は?
C で基本的なプロキシ サーバーを作成するという最後の大きなハードルに直面しています。
サーバーがブラウザからリクエストを正常に受信し、ホストに正常に送信しました。そして、ホストからの応答を正常に受信しています! ただし、サーバー経由で Google に接続しようとすると、次のようになります。
切れるのがわかりますか?「Transfer-Encoding: chunked」のためです。サーバーが残りのチャンクを送信し続けるようにするにはどうすればよいでしょうか? その最初のものの後、それは止まるからです。read() を while ループの中に入れて、何か読み取るものがある限り、読み取りとクライアントへの転送を続行する必要がありますか?
編集:
さて、これが私の現在のコードです。これにより、サーバーの応答が最初に 1 回読み取られ ("sock" という名前のソケットで)、それがクライアントに書き込まれ ("newsock")、while ループに入り、さらにサーバーの応答を読み取ってクライアントに送信し続けます。この形式のコードはまだテストしていません。エラーチェックのギャップ以外に明らかな問題はありますか?
ruby - Ruby チャンク エンコーディング クライアント
HTTP Chunked Transfer エンコーディングでストリーミング データを受信する小さな Ruby スクリプトを作成しようとしています。だから私はこれのクライアント側でルビーを使用しています。Ruby (および Rails) がストリームを提供することに関する多くの質問と情報を見つけることができますが、それらを消費することについてはあまり知りません。おそらくそれは些細なことであり、HTTP の低レベルの機能として機能するはずだからです。誰かが私に小さなサンプル スクリプトをくれませんか?
私はいくつかのことを試しました。これはopen-uriを使用しています:
...そしてこれは net http を使用しています:
どちらの場合も、何も出力されません。Apache で、私の php スクリプトが忙しく、ますます多くのデータを吐き出していることがわかります。ここで何が問題なのかは明らかだと思います。どちらの場合も、スクリプトは処理する前に応答全体を取得するのを待っていると思います (これは決して起こりません)。
私のphpスクリプト(サーバー)に何か問題がある可能性があることに言及する必要がありますが、それがFirefoxにかなりうまくチャンクを吹き込んでいるのを見ることができます.
では、データをストリーミングする簡単なルビーの方法はありますか? または、これを行うには特別な宝石/ライブラリが必要になると予想する必要がありますか? (たとえば、このライブラリに出くわしました)
http - チャンク化またはパケット損失のためにjsファイルをバンドル/結合する際の最大推奨サイズはありますか?
ですから、javascriptとcssをできるだけ少ないファイルにバンドルするのは良いことだと聞いています。もちろんそうですが、話が単純すぎるように思えます。
ここで私の論理が理にかなっているかどうかを確認してください。
明らかに、HTTPリクエストが少ないほど、ラウンドトリップが少なくなるため、より良い結果が得られます。しかし-そして私は裸のhttpについてあまり知りません-http応答はチャンクで送信されませんか?そして、ファイルがそれらのチャンクの1つよりも大きい場合、複数の(おそらく同期?)ラウンドトリップとしてダウンロードする必要はありませんか?これとは対照的に、最新のWebブラウザーはJavaScriptなどのリソースを並行してダウンロードするため、チャンクサイズのすぐ下のファイルに対するいくつかの要求ははるかに迅速に到着します。
チャンク化が問題ではない場合でも、バンドルされたファイルは完全にダウンロードされて実行されるまで待機する必要があるため、パケット損失の可能性があるため、推奨される最大サイズがあるようです。スクリプトが実行する必要があるより寛大なネイティブルールとは異なります。順番に。
もちろん、ブラウザのキャッシュとコードの変動性についても考慮する必要がありますが、誰かがこれを確認したり、私がベースから外れている理由を説明したりできますか?誰かがそれに入れる数字はありますか?