13

PUT の HttpURLConnection でコンテンツの長さを設定しています。

urlConnection.setRequestProperty("Content-Length", "" + responseJSONArray.toString(2).getBytes("UTF8").length);

実際のバイト数は 74 です。ただし、urlConnectionI'm returnedのコンテンツの長さを照会すると-1. 何故ですか?そして、なぜ長さが等しくないのですか (私がこれを設定したとして)?

411サーバーからの応答を受信して​​いるため、コンテンツの長さを設定する必要があります。

(また、Sun のsetRequestPropertyでは、 の 2 番目の引数がis 型intであり、 not型であるのを見てきましたがString、これは奇妙に思えます。)

4

3 に答える 3

24

このヘッダーを自分で設定しないでください。setFixedLengthStreamingMode()またはを使用しsetChunkedTransferMode()ます。

于 2011-08-15T07:05:54.957 に答える
2

また、 setDoOutputを追加して、データを送信することを接続に伝えることも忘れないでください。

于 2011-08-15T07:13:34.653 に答える