表单

HTML表单

标记用于创建一个表单,表单用于用于搜集不同类型的用户输入

  • action:指定表单数据提交到哪个地址进行处理
  • method:定义处理程序从表单中获得信息的方式。(post或get)。决定了表单中已收集数据是用什么样的方法发送到服务器的
  • enctype:设置表单信息向服务器提交的编码方式,

表单编码方式

application/x-www-form-urlencoded

form数据转换成一个字串(name1=value1& amp;name2=value2...)
如包含用户名和密码的数据:
编码后为:"name=Slr&passwd=1234567"

multipart/form-data

  • 浏览器会把整个表单以控件为单位分割,并为每个部分加上 Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件 name)等信息,并加上分割符(boundary)。
  • 如果传送的内容是一个文件的话,那么还会包含文件名信息,以及文件内容的类型。
  • multipart/form-data的请求头示例 Content-Type: multipart/form-data; boundary=${bound}

tip

  • 默认的缺省值是“application/x-www-form-urlencoded”
  • 当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串,然后把这个字串append到url后面,用?分割,加载这个新的url。
  • 当action为post时候,浏览器把form数据封装到http body中,然后发送到server。
    • 如果没有type=file的控件(也就是需要传输文件内容),用默认的application/x-www-form-urlencoded就可以了。
    • 如果有type=file的话,就要用到multipart/form-data了。
posted @ 2016-09-01 16:07  苏苏苏紫Sue  阅读(186)  评论(0编辑  收藏  举报