Java,HttpURLConnection和设置内容长度

我正在为PUT设置我的HttpURLConnection中内容的长度。

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

实际字节数为 74。但是,当我查询的内容长度时,我返回。为什么?为什么长度不相等(假设我设置了这个)?urlConnection-1

我必须设置内容长度,因为我正在接收来自服务器的响应。411

(另外,在 Sun 的例子中,我看到了 is 的第二个参数 is of type and not ,这似乎很奇怪。setRequestPropertyintString


答案 1

您不应自行设置此标头。使用 或 。setFixedLengthStreamingMode()setChunkedTransferMode()


答案 2

另外,不要忘记添加一个setDoOutput来告诉您的连接您将要发送数据。


推荐