bluefox1688/vue-cli-multi-page

ajax()怎么只能发get请求,不能发post请求呢?

ttflowerboys opened this issue · 4 comments

发现在惊天大BUG:

  • 混淆了paramsdata参数的使用
  • POST请求数据会出现: {"a":1,"b":2}:

image

import axios from 'axios';
var qs = require('qs');    // 新增 qs

function ajax(opt){

    var opts = opt || {};

    if (!opts.url) {
      alert('请填写接口地址');
      return false;
    }

    axios({
      method: opts.type || 'get',
      url: opts.url,
      params: opts.params || {},     // 这是路径的参数
      data: qs.stringify(opts.data),  // 这是post参数,并使用qs.stringify()处理数据
      headers: opts.headers || {
          'Content-Type':'application/x-www-form-urlencoded'
      },
      baseURL:'http://api.domain.com/api/',
      timeout: opts.time || 10*1000,
      responseType: opts.dataType || 'json'
    }).then()

确实会有个问题
需要重新配置一下 axios

我已经在你写的基础上改了,你看一下:
aaaa

好,感谢