0

仕様と比較したチャンク データの適切な形式と、Twitter がアクティビティ ストリームから返すものに興味があります。

curl を使用して Twitter からチャンク ストリームを取得しようとすると、curl は次のように報告します。

~$ curl -v https://stream.twitter.com/1/statuses/sample.json?delimited=length -u ...:...
< HTTP/1.1 200 OK
< Content-Type: application/json
< Transfer-Encoding: chunked
<
1984
{"place":null,"text":...
1984
{"place":null,"text":...
1984
{"place":null,"text":...

ウィキペディアの情報と HTTP 仕様 (基本的には \r\n\r\n) に基づいてチャンク データ エミッターを作成しました。結果は次のようになります。

~$ curl -vN http://localhost:7080/stream
< HTTP/1.1 200 OK
< Content-Type: application/json; charset=UTF-8
< Transfer-Encoding: chunked
< 
{"foo":{"bar":...
{"foo":{"bar":...
{"foo":{"bar":...

違いは、Twitter が整数としてチャンクの本体の一部として文字列の長さを含めているように見えることです (そこにある必要がある Hex の値と併せて)。何かを見逃していません。Twitter のドキュメントでは長さの値について言及されておらず、にも記載されていません。また、仕様にも記載されていません。

4

2 に答える 2

0

コードが長さ情報を出力しない場合は、明らかに正しくありません。http://greenbytes.de/tech/webdav/rfc2616.html#rfc.section.3.6.1を参照してください。

于 2012-01-31T08:33:13.380 に答える