urlencoded格式化

// 拦截器里面
config.headers = {
            'Content-Type':'application/x-www-form-urlencoded' //设置跨域头部
        }

使用 application/x-www-form-urlencoded 格式化

在浏览器中你可以如下使用 URLSearchParams API:

var params = new URLSearchParams();
params.append('param1','value1');
params.append('param2','value2');
axios.post('/foo',params);

注意: URLSearchParams 不支持所有的浏览器,但是这里有个 垫片

axios 基于原生的ES6 Promise 实现。如果环境不支持请使用 垫片

polyfill

其他方法:你可以使用 qs 库来格式化数据

var qs = require('qs');
axios.post('/foo', qs.stringify({'bar':123}));

Node.js

在nodejs中,你可以如下使用 querystring :

var querystring = require('querystring');
axios.post('http://something.com/', querystring.stringify({foo:'bar'}));

如果参数需要穿数组,只需要在qs的方法中设置它的indices为false即可

qs.stringify({ a: ['b', 'c', 'd'] }, { indices: false });

全局axios默认配置

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
posted @ 2019-04-03 17:46  不会代码的前端  阅读(6188)  评论(0编辑  收藏  举报