vue axios post 请求后端无法参数解决方法

2018-06-29  本文已影响0人  从入门到放弃治疗

1.VUE AXIOS npm install axios --save

2.在 import axios from 'axios'; node_modules>axios>lib>defaults.js

/* 这里是重点,其他的其实可以照着axios的源码抄 */
/* 这里就是用来解决POST提交json数据的时候是直接把整个json放在request payload中提交过去的情况
* 这里简单处理下,把 {name: 'admin', pwd: 123}这种转换成name=admin&pwd=123就可以通过
* x-www-form-urlencoded这种方式提交
* */
    if(utils.isObject(data)) {
    setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
    let keys2 = Object.keys(data);
    /* 这里就是把json变成url形式,并进行encode */
    //console.log('key====', keys2)
    return encodeURI(keys2.map(name => `${name}=${data[name]}`).join('&'));
}
/*把下面这段注释掉*/
//  if(utils.isObject(data)) {
//      setContentTypeIfUnset(headers, 'application/json;charset=utf-8');
//      return JSON.stringify(data);
//  }
上一篇下一篇

猜你喜欢

热点阅读