zoukankan      html  css  js  c++  java
  • Vue 中用delete方式进行axios请求接口,请求状态码报415(Unsupported Media Type)

    报错截图:

         

    导致原因:

         vue中axios请求方式,delete和post,put在传值上有区别, post 和 put 有三个参数,url , data , 和 config 。所以在使用这两个时,可以写成  axios.post(url,{param:xx}) , axios.put(url,{param:xx}), 但是delete只有两个参数: url  和 config ,data在config中,所以需要写成 axios.delete(url,{data:{param:xx}}) 。

         这个是在封装请求方法里面处理的,之前代码如下:

    export function delete(url,params){
          return new Promise((resolve,reject)=>{
               axios.delete(url,qs.stringify(params)).then(response=>{   //put封装和这个一样
                     resolve(response);
               },err=>{
                     reject(err);
               }).catch((error)=>{
                     reject(error);
               })
          })
    }

          改过之后,代码如下:

    export function delete(url,params){
          return new Promise((resolve,reject)=>{
               axios.delete(url,params).then(response=>{  //这里传递的参数不做处理
                     resolve(response);
               },err=>{
                     reject(err);
               }).catch((error)=>{
                     reject(error);
               })
          })
    }

    使用方法:

         封装接口,例如:  const  delApi = value => 封装请求方法文件的名字.delete(url+'api/xxx/xxx',value);

         调用: 

               let data = { param: param};    //传递的参数形式

               封装接口的文件名字.delApi({data:data}).then(res=>{

                        //请求成功返回的数据

               }).catch(err=>{})

    相关网址:   https://blog.csdn.net/w_e_i_1201/article/details/86006816

    以及关于axios 中文文档详解网址:   https://www.jb51.net/article/123485.htm

  • 相关阅读:
    Elasticsearch之如何合理分配索引分片
    mybatis 批量插入 decimal精度问题
    在Java项目中打印错误日志的正确姿势
    Fork/Join框架原理
    AOP切面之打印方法时间
    转java之基础 equals和==比较
    Kibana
    基于mq搭建elk
    LogBack
    MongoD副本集(一)
  • 原文地址:https://www.cnblogs.com/sunnyeve/p/12133183.html
Copyright © 2011-2022 走看看