HTTP header
HTML:
form enctype = “value”
AJAX:
Ajax.setRequsetHeader(“content-type”,“multipart/form-data”)
input type='file’
的value
是__ dirname __
,并不是源文件,于是:
表单form
的enctype
属性
语法:form enctype = “value”
规定如何对表单数据编码提交服务器,如下:
值 | 描述 |
---|---|
application/x-www-form-urlencoded | (键值对)所有字符编码,空格=>"+",特殊字符=>ASCII HEX值,默认值 |
multipart/form-data | (boundary分割线)不编码,文件上传时必须 |
text/plain | (空格=>“+”)纯文本/邮件/头文件 |
思考:text/plain下get/post方式的不同点?
相关:上历史课啦~~1!
异步AJAX.setRequestHeader()设置表头
语法:Ajax.setRequsetHeader(“content-type”,“value”)
value常用的几种:
- application/x-www-form-urlencoded
- multipart/form-data
- application/json
- text/xml
参考:W3School XMLHttpRequest对象2;
事件顺序,ajax.setRequestHeader()
在ajax.open()
和ajax.send()
之间;
注:Ajax.setRequsetHeader(“content-type”,“multipart/form-data”)
文件上传时,无法定义boundary导致失败的情况