处理http请求参数及html表单
<input标记有一个value属性,他的初始值与请求参数的默认值对应。如对于提交按钮
<input type="submit" name="submit" value="submit">
以上标记的name属性值为submit,value属性初始值为submit,因此浏览器把他们转变为请求参数“submit=submit”
?
?
客户端向服务端上传文件:
?
只要把特定文件中的数据放到http请求的正文部分,就能发送任意格式的文件
?
上传文件<form>标记的重要属性:
?
method:post 指定为post使得表单数据会放到http请求的正文部分
?
enctype:用于指定表单数据的MIME类型,取值为“multipart/form-data”,表示表单数据为复合类型的数据,包含多个子部分。
?
action属性: 指定请求访问的URI
?
HTTP请求的正文部分为复合类型,包含两个部分,文件部分和提交按钮部分,IE浏览器随机产生一个字符串形式的边界,http请求的正文的各个子部分之间用边界来进行分隔
?
服务器端必须对http请求进行解析,读取其中的边界值,然后根据边界值定位到文件部分,进而定位到文件的正文部分,再把正文的数据保存到本地文件系统中。
?
当上传rar等类型时,服务器端在处理文件部分的正文部分时,会把它按照字节流而不是字符串流写到本地文件中,这样rar文件中的数据可以准确无误的保存到服务器端的文件系统中。