赞
踩
目前常用的4种content-type:
application/x-www-form-urlencoded 最常见的 POST 提交数据的方式,浏览器的原生 form 表单,如果没有文件上传,都会以这个方式提交数据
multipart/form-data 如果form表单包含了文件上传,就得用这个方式了,正常需要生成一个formData对象,把需要上传的数据放进这里
var param = new FormData();
param.append('file',file);
param.append('name',val);
application/json Ajax时代兴起的请求头,目前使用很广泛,配合JSON.stringify和JSON.parse食用更佳
text/xml 它是一种使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范,目前微信用的是这种数据格式发送请求
了解这个以后再来看一下axios。
1、axios下get请求默认会以params的形式发送,会自动将你需要发送的数据对象拼接成 url?name=a&age=b形式;
2、post请求会以data形式发送,默认使用的application/json请求头,会将对象数据转化成JSON形式,例如{ "name" : "a", "age" : "b" },如果想要设置类型为application/x-www-form-urlencoded,需要引入axios自带的qs转化下数据
const qs = require('qs');
3、如果请求包含type="file"上传的文件,得设置multipart/form-data请求头,并把file和具体配置都放进生成的formdata对象里
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。