这篇文章主要为大家详细介绍了Vue axios全局拦截 get请求、post请求、配置请求的实例代码,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随四海网的小编两巴掌来看看吧!
下面通过一段代码给大家介绍Vue axios全局拦截 get请求、post请求、配置请求,具体代码如下所述:
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="../node_modules/vue/dist/vue.js"></script>
<script src="../node_modules/axios/dist/axios.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
</head>
<body>
<div id="app" class="container">
<h1>axios插件讲解</h1>
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="btn btn-primary" v-on:click="get">Get请求</a>
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="btn btn-primary" v-on:click="post">Post请求</a>
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="btn btn-primary" v-on:click="http">http</a>
<div>
<span>{{this.msg}}</span>
</div>
</div>
<script>
new Vue({
el: '#app',
data: {
msg: ''
},
mounted () {
// 请求拦截
axios.interceptors.request.use(config => {
return config
},error => {
return Promise.reject(error)
})
axios.interceptors.response.use(response => {
// 预处理相应的数据
return response
}, error => {
// 错误返回 状态码验证
return Promise.reject(error)
})
},
methods: {
get () {
axios.get('../package1.json', {
params: {
userId: '999'
},
headers: {
token: 'jack'
}
}).then(res => {
this.msg = res.data
}).catch(error => {
console.log('error init.' + error)
})
},
post () {
axios.post('../package.json', {
userId: '888'
},{
headers: {
token: 'tom'
}
}).then(res => {
this.msg = res.data
}).catch(error => {
console.log('error init.' + error)
})
},
http () {
// 配置请求
axios({
url: '../package.json',
method: 'get',
// if method is post
data: {
userId: '101'
},
// if method is get
params: {
userId: '102'
},
headers: {
token: 'http-test'
}
}).then(res => {
this.msg = res.data
}).catch(error => {
console.log('error init.' + error)
})
}
}
})
</script>
</body>
</html>
我们常用的有get方法以及post方法,下面简单的介绍一下这两种请求方法
vue中使用axios方法我们先安装axios这个方法
npm install --save axios
安装之后采用按需引入的方法,哪个页面需要请求数据就在哪个页面里引入一下。
import axios from 'axios'
引入之后我们就可以进行数据请求了,在methods中创建一个方法
代码如下:
methods:{
getInfo(){
let url = "url"
axios.get(url).then((res)=>{
console.log(res)
})
}
}
然后我们在mounted这个生命周期中进行调用
代码如下:
mounted(){
this.getInfo()
}
这样就可以在控制台中查看数据,以上是一个简单的get方法数据请求,下面继续介绍一下post方法的使用,其实post和get的使用没有什么区别只是再加上一个参数就可以了,看一下我们的代码
代码如下:
methods:{
postInfo(){
let url = "url"
let params=new URLSearchParams();//这个方法在axios的官网中有介绍,除了这个方法还有qs这个方法
params.append("key",index)
params.append("key",index)
axios.post(url,params).then((res)=>{
console.log(res)
})
}
}
同样在mounted这个生命周期中进行调用
代码如下:
mounted(){
this.postInfo()
}
以上所述是小编给大家介绍的Vue axios全局拦截 get请求、post请求、配置请求的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对四海网网站的支持!
本文来自:http://www.q1010.com/184/6476-0.html
注:关于Vue axios全局拦截 get请求、post请求、配置请求的实例代码的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。
关键词:vue.js
四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。