分析文件上传过程中的HTTP头部

分析提交的HTTP请求的头部。

POST /struts-upload/upload.do?queryParam=Successful HTTP/1.1
Accept: */*
Referer:
http://127.0.0.1:8080/struts-upload/upload.jsp
Accept-Language: zh-cn
Content-Type: multipart/form-data; boundary=---------------------------7d5d116460764
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; .NET CLR 1.1.4322)
Host: 127.0.0.1:8080
Content-Length: 59433
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: JSESSIONID=02EB09AF12DCDA5982A483A2555F982E; JSESSIONID=A85A47CD8A8334BCBCA65ACB51A7B550 -----------------------------7d5d116460764
Content-Disposition: form-data; name="theText" haha
-----------------------------7d5d116460764
Content-Disposition: form-data; name="theFile"; filename="C:\Documents and Settings\yym\桌面\Flash IDE Plugin.doc"
Content-Type: application/msword
文件二进制内容
-----------------------------7d5d116460764
Content-Disposition: form-data; name="writeFile" on
-----------------------------7d5d116460764
Content-Disposition: form-data; name="filePath" c://haha.doc
-----------------------------7d5d116460764--

我们注意Content-Type: multipart/form-data; boundary=---------------------------7d5d116460764 这段,在有文件提交的HTML页面中,所有表单的类型都为multipart/form-data,如果有文件上传,则会出现一个boundary编号,号码为---------------------------7d5d116460764,从后面来看这个更加像一个分割符,把表单中的每个域分割开来。
在一个---------------------------7d5d116460764后面,有一项是表示文件的

Content-Disposition: form-data; name="theFile"; filename="C:\Documents and Settings\yym\桌面\Flash IDE Plugin.doc"
Content-Type: application/msword
文件二进制内容

在这里面标注了文件的表单域名称、文件路径、类型,和它的二进制内容 。
posted @ 2011-10-23 15:41  94cool  阅读(499)  评论(0编辑  收藏  举报