axios中常见传参方式get/post/put/patch/delete

axios 依赖本机要支持ES6 Promise实现。 如果您的环境不支持ES6 Promises,您可以使用polyfill。

常见的get post请求之间参考axios官方api

下面主要描述开发过程不常见的传参方式

1:get请求

axios中常见的get请求,是下面这种情况:

axios.get('/user?ID=12345',data)
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});

但是在开发中为了封装一些get,post,put等请求,我们一般会把参数放在url的后面,例如

axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});

在官方上后面post,put,patch,delete的请求就说的很简单。所以我详细更新下:

2.post请求

传参方式大致用的有3种

(1) 传参格式为 formData 

        var formData=new FormData();
        formData.append('user',123456);
        formData.append('pass',12345678);
axios.post("/notice",formData)
        .then((res) => {return res})
        .catch((err) => {return err})

(2) 传参格式为 raw (JSON格式) 

        var formData=JSON.stingify({
'user':123456,
'pass':12345678
})
axios.post("/notice",formData)
        .then((res) => {return res})
        .catch((err) => {return err})


(3) 传参格式使用application / x-www-form-urlencoded格式

 默认情况下,axios将JavaScript对象序列化为JSON。 要以应用程序/ x-www-form-urlencoded格式发送数据,您可以使用以下选项之一。

<1> 浏览器

在浏览器中,您可以使用URLSearchParams API,如下所示:

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

请注意,所有浏览器都不支持URLSearchParams,但是有一个polyfill可用(确保polyfill全局环境)

<2> qs方式

import Qs from 'qs'   //引入方式
Vue.prototype.$qs = Qs
this.$qs.stringify(data);
this.$qs.parse(data)
       var params=this.$qs.stringify({
            "id":12345,
            "content":'2121'
       });
axios.post('/foo', params);


3.put请求,一般情况下都是和post请求的第3种是一样的

4.delet请求,一般情况下都是和get请求的是一样的

阅读更多
版权声明: https://blog.csdn.net/qq_31837621/article/details/80688854
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭