axios自定义参数传输给后台格式(JSON/FormData等)

862 阅读1分钟

查看当前传输给后台的格式

  • url拼接,请求中为Query String Parameters即为再url上拼接的参数。axios只需要在参数传递使用params字段传承,默认就是这种方式传递参数(当时遇到的坑,post请求参数被拼接到url上的原因就是使用了params字段而不是data字段)。
//服务重启
async restartService({ commit }, args) {
    const { data } = await request({
      config: {
        method: 'GET',
        url: '/managercenter/system/service/restartService',
        params: args,//参数自动拼接到url上
      },
      error: {
        message: toggle('获取数据失败', 'Failed to get data'),
      },
    });
    return data;
},

image.png
对应postman的Params

image.png

  • post请求,默认axios使用为data传递参数,则默认使用的格式为json格式,我们可以在请求头中看content-type字段,以及请求体。注意如果Content-length为0则说明请求体没内容,则content-type字段会不显示

image.png 对应的postman为x-www-form-urlencoded

image.png

  • 我们用的文件上传要使用content-type为multipart/form-data,postman测试使用form-data则可以上传文件,x-www-form-urlencoded是不能上传文件操作。