「なでしこv1」開発掲示板

なでしこv1のバグや要望を書き込む掲示板
[一覧へ] > (@650) [低] [未処理]
@650■ (#2052) HTTPポスト/簡易ポストでchunkedのbodyを受信しない場合がある - うぇいく (2012-10-19 12:17) /低 未処理
【症状】どのような症状、現象か?
HTTPポスト/簡易POSTを用いてHTTP通信をした場合、その応答内容がContent-Lengthを含まない(Chunkedになっている)場合、短時間で受信待ちを解除してしまい、Bodyを受け取らずにヘッダしか取得できない場合がある。
(ポスト系以外は未確認ですが、多分GETも一緒。)
【再現方法】サンプルソース、再現手順など
なでしこ側は
---
パラメータは「id=userid&password=password」
ヘッダは「Content-Type: application/x-www-form-urlencoded」
http://*****/login.cfm」へヘッダとパラメータをHTTPポスト
それを言う
---
だけですが、どちらかというと、重要なのはサーバの動作です。
・http/1.1で、Content-Lengthを含ままず、Transfer-Encodingがchunkedになっている。
・受信の途中、ヘッダの受信が終わった以降で、送信されてこない空きの時間が1秒以上ある。

【要望】どのような解決が望ましいか?
Content-Lengthを含まない場合でも、Transfer-Encoding: Chunkedを理解してデータ長による受信待ちしてほしい。
http 1.1で、長さを知る方法が何もない場合は、今の動作で良いと思います(プロトコル違反な気が)
(http 1.0なら、Socketがクローズされるまでがデータで区別がつきます。)
HTTP/1.1のプロトコルを理解できないなら、HTTP/1.1未対応として、HTTP/1.0で要求するべきなのかもしれません(RFC上、chunkedの対応はMUST項目。)
【バージョン】確認したバージョン
1.5334
【その他】

(#2052)へ返信する:

👆お手数ですが、いたずら防止のために、「真夏」の読み方を記入してください。

編集時に使うキーを入力(省略可能)

画像ファイル(最大300KB)を添付可能