关于 Content-Length 的数值

上传

当上传多个文件时,即 Content-Type 为 multipart/form-data 时,我们会打开一个 DataOutputStream:

outputStream = new DataOutputStream(conn.getOutputStream());

这种情况下 Content-Length 的值为写入 stream 的全部数据的大小,可以用 outputStream.size() 查看。

int java.io.DataOutputStream.size()
Returns the total number of bytes written to the target stream so far.

其他情况待续

下载

拿百度 logo 举个例子吧,通过 URL 用 get 方法:

$ http get http://www.baidu.com/img/bdlogo.png
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=315360000
Connection: Keep-Alive
Content-Length: 5331
Content-Type: image/png
Date: Tue, 28 Apr 2015 09:47:54 GMT
ETag: "14d3-4ff90199dfb40"
Expires: Fri, 25 Apr 2025 09:47:54 GMT
Last-Modified: Fri, 01 Aug 2014 11:57:57 GMT
P3P: CP=" OTI DSP COR IVA OUR IND COM "
Server: Apache
Set-Cookie: BAIDUID=4F416F46A8115AB0DC8B4E881EBD8228:FG=1; expires=Wed, 27-Apr-16 09:47:54 GMT; max-age=31536000; path=/; domain=.baidu.com; version=1

$ ls -l bdlogo.png
-rw-r----- 1 han han 5331 Apr 28 17:48 bdlogo.png

看到 5331 这个数值没有?
可见 Content-Length 就是 bdlogo.png 的文件大小。

其他情况待续

你可能感兴趣的:(关于 Content-Length 的数值)