問題タブ [chunked]

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 投票する
1 に答える
927 参照

python - Pythonでチャンク化されたコンテンツタイプの応答を解析する

content-type のリクエストを読み取って解析しようとしています: Python でチャンクされています。ブラウザに URL をロードしてソースを見ると、次のように表示されます。

次のような json エントリを取得して解析したいと思います。

これどうやってするの?

ありがとう

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

ruby-on-rails-3 - Rails send_fileがWebサービスから呼び出されたときにデータを送信しない

send_file がファイルを正しく送信できないという奇妙な状況に陥っています。状況は次のとおりです。

Rail バージョン: 3.0.10 および 3.1.0 [テスト用の 2 つの異なるブランチ] Ruby: RVM 上の 1.9.2 Web サーバー: Apache with Passenger

私のクライアントは文書管理システムを持っています。Rails 2 から Rails 3 (そして現在は Rails 3.1) へのアップグレードに取り組みました。以前のシステムはかなり古いものだったので、ほとんどのシステムを再開発しました。1つを除いてすべての機能が機能しています。このアプリケーションにより、ユーザーは自分に割り当てられたドキュメントをダウンロードできます。ユーザーがログインすると、自分に割り当てられているドキュメントが表示され、ダウンロードできます。それは完全にうまく機能します。動作するコードは次のとおりです。

彼ら (私のクライアント) が、.NET ベースの Web サービス (ま​​たはそれが呼ばれる可能性のあるもの) を介して要求されたときにドキュメントを送信する以前のソリューションを作成したクライアントが 1 つあります。Web サービスはユーザーとして認証され、ドキュメント ダウンロード パスに転送されます。Web サービスを認証してから、ファイルをダウンロードするコントローラー アクションにリダイレクトすることはできますが、機能しません。サーバーログには、すべて問題ないことが示されています。

特定の名前と IP を変更しました。IP (12.123.12.123) は、Web サービスをホストするサーバー用であることに注意してください。

私は .NET Web サービスを開発した開発者と電話で話しました。彼は、コンテンツの長さが -1 であり、コンテンツを受信して​​いないことを除いて、すべてのヘッダーを正しく取得していると述べています。彼は、他のすべてのヘッダーは正しいと言いました。

この問題を解決するために; 可能なすべてのオプション(x_sendfile、stream、dispositionなど)を設定して、send_fileの複数のバリエーションを試しました。また、ヘッダーを設定してみました:

しかし、Web サービスを使用してファイルをダウンロードしても何も機能しません。ただし、同じ方法はブラウザーで直接機能します [コードで認証をバイパスしてテストしました]。

send_date を使用してみましたが、うまくいきません:

回避策として、ファイルを送信する代わりにredirect_toを試し、パブリックフォルダーでテストファイルを使用しましたが、機能しました。安全ではありませんが、これはうまくいくようです。唯一の問題は、ブラウザがドキュメントをダウンロードする代わりに開いていることです。

私を助けてください。

更新:この問題は、Rails がチャンク化されたコンテンツを送信するようになり、Web サービスがコンテンツの長さを予期していたという事実に関連していました。

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

java - JavaRESTチャンクエンコーディング

チャンクエンコーディングを使用するRESTサービスでいくつかの情報を読み込もうとしています。

応答には、ステータス、メタデータ、およびエンティティが含まれます。メタデータには次の情報が含まれています。

{Date =[2011年10月13日木曜日13:27:02GMT]、Vary = [Accept-Encoding、User-Agent]、Transfer-Encoding = [chunked]、Keep-Alive = [timeout = 15、max = 100] 、Content-Type = [text / html; charset = charset = UTF-8]、Connection = [Keep-Alive]、X-Pad = [ブラウザのバグを回避]、Server = [Apache / 2.2.3(Linux / SUSE)]}

エンティティには、sun.net.www.protocol.http.HttpURLConnection$HttpInputStreamタイプのインスタンスが含まれています。

私は過去に、次のコード行を使用して、結果文字列全体を取得していました。

しかし、どういうわけか、この行は例外をスローします:

。応答メッセージの読み取りに問題があります。クラス:クラスjava.lang.String、ContentType:text / html; charset = charset=UTF-8。org.apache.cxf.jaxrs.client.ClientWebApplicationException:。応答メッセージの読み取りに問題があります。クラス:クラスjava.lang.String、ContentType:text / html; charset = charset=UTF-8。

... のせいで:

原因:java.io.UnsupportedEncodingException:charset = UTF-8 at sun.nio.cs.StreamDecoder.forInputStreamReader(Unknown Source)at java.io.InputStreamReader。(Unknown Source)atorg.apache.cxf.helpers.IOUtils。 toString(IOUtils.java:180)at org.apache.cxf.helpers.IOUtils.toString(IOUtils.java:166)at org.apache.cxf.jaxrs.provider.PrimitiveTextProvider.readFrom(PrimitiveTextProvider.java:51)at org .apache.cxf.jaxrs.client.AbstractClient.readBody(AbstractClient.java:435)... 49 more

応答のコンテンツ全体を取得するための簡単な解決策はありますか?

ありがとうございました!

kon

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

request - Fiddlerでチャンクリクエストを生成するには?

サーバーをテストし、Fiddler からチャンク リクエストを送信する必要があります。非常に単純なものを送信する必要があります。たとえば、「a」文字をコンテンツとして送信する必要があります。

Transfer-Encoding: chunked ヘッダーを設定できる Request Builder タブがありますが、Request Body を指定するにはどうすればよいですか?

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

php - サーバー側でのpluploadのチャンクアップロードの処理

pluploadを使用してファイルをチャンク化すると(設定オプションchunk_size)、チャンクごとに個別のPHPリクエストを受け取ります。変数を見ると$_FILES、各チャンクはタイプ"application/octet-stream"です。

サーバーサイドでPHPでこれらの要素を組み合わせるためのシンプルで標準的で快適な方法はありますか?

健全性が保証されています(たとえば、ピースの1つが欠落している場合など)。

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

apache - Apache mod_deflateとTransfer-encodingを作成する方法:チャンクは一緒に機能しますか?

私は私たちのウェブサイトでbigpipeのコンセプトを使おうとしています。つまり、ユーザーがそのページが高速であると感じるように、応答を全体として送信するのではなく、チャンクで送信しようとすることを意味します。Javaの応答オブジェクトでflushBufferメソッドを使用することで、これを行うことに成功しました。しかし、apache mod_deflateモジュールを使用してコンテンツを圧縮しようとすると、チャンクが失われます。

これは、コンテンツを圧縮するために使用されるapacheの構成です。

**

mod_deflate構成を開始します

mod_deflateconfigを終了します**

これは、apacheでdeflateがオンになっている場合の応答ヘッダーです。

Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:7916
Content-Type:text / html; charset = UTF-
8日付:2012年1月27日金曜日20:11:11 GMT
キープアライブ:タイムアウト= 300、最大= 3997
サーバー:Apache
Vary:Accept-Encoding

apacheでdeflateがオフになっている場合の応答ヘッダー

Connection:Keep-Alive
Content-Type:text / html; charset = UTF-
8日付:2012年1月27日金曜日20:21:14 GMT
キープアライブ:タイムアウト= 300、最大= 3997
サーバー:Apache / 2.2.3(CentOS)
転送-エンコード:チャンク

上記の2つのヘッダーでわかるように、チャンクは圧縮がオフになっている場合にのみ機能します。私はこれに関してインターネットで検索していました、そして人々はDeflateBufferSize値を減らすことを提案していました。apache configでわかるように、値を100バイトに減らしましたが、それでも問題は解決しませんでした。DeflateBufferSizeを100バイトに設定すると、応答は100バイトが受信されるまでapacheにバッファリングされ、その後圧縮されます。

古いapache1.3にバンドルされているmod_gzipモジュールを見ていましたが、そのモジュールには、チャンクされたコンテンツをgzipで圧縮できる次のディレクティブがあります。

mod_gzip_dechunkはい

誰かがapache2.xにバンドルされているmod_deflateのそのようなディレクティブを知っていますか?

または、チャンクされたコンテンツを圧縮する方法を知っている人はいますか?

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

mpmovieplayercontroller - iOSデバイスへの静的ファイルのHTTPライブストリーミング

iOSデバイスへの静的ビデオファイルのHTTPライブストリーミングの「チャンク」の側面を理解しようとしています。ビデオファイルのチャンクはどこで発生しますか?

編集HTTP LIve Streamingともう少しhttps://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07を読むと、ビデオファイルが.tsセグメントに分割されているように聞こえますサーバー。または、m3u8プレイリストでファイルへのバイトオフセットを指定できます(明らかにを使用してEXT-X-BYTERANGE)。

AppleのHLSの説明https://datatracker.ietf.org/doc/html/draft-pantos-http-live-streaming-07を読んだ後、このプロセスについて私が理解したことは次のとおりです。

  • 静的ファイルは私のサーバー上にあります。適切なオーディオ/ビデオエンコーディング(H.264およびAAC)があります。
  • m3u8アプリのメディアプレーヤー(MPMoviePlayerまたは同様のもの)にプレイリストを渡します。
  • アプリは、メディアの再生中に「インデックスをリロード」します。言い換えれば、アプリは再生する追加のセグメントを要求します。
  • 各10秒のセグメントはMPEGトランスポートストリームコンテナにあります。

このプロセスについての私の理解は不完全です(そしておそらく正しくありません)。追加情報は大歓迎です。

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

python - http.clientにPythonでチャンクエンコーディングHTTPボディを送信させる方法は?

チャンクされたHTTP本体を送信して、自分のHTTPサーバーをテストしたいと思います。だから私はこのPythonコードを書きました:

HTTPリクエストの本文はtransferrdチャンクであると思いますが、Wiresharkでネットワークパッケージをキャプチャすると、HTTPリクエストの本文はチャンクで転送されません。

Pythonでhttp.clientlibによってチャンクされた本体を転送する方法は?

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

java - ServerResource からクライアントへの応答のストリーミング

残りのエンドポイントにコンテンツをストリーミングしており、それを ServerResource として実装しました。着信ストリームを消費することは問題ではありませんが、入力を処理している間、クライアントに情報を返したいと思っています。ただし、これは ServerResource からは実行できないと思います。これは、実際に Representation を返す必要があるためです (その後、入力ストリームからの読み取りを中止します)。

このシナリオで推奨されるアプローチは何ですか? 生の Restlet を使用してハンドル メソッドで処理しますか? 一般的に、人々はこれをどのように解決しましたか?

明らかに、「生の」HttpServlet を使用して簡単に実現できますが、全面的に restlet を使用できるようにしたいと考えています。

0 投票する
5 に答える
241 参照

java - int[] チャンクをチャンクごとに読み取る方法

int[] が渡され、関数 f(int[] array) があるとします。配列の長さが分からない場合、どうすればそれをチャンクごとに実行できますか? またはそれを行うより良い方法はありますか?ありがとう