前言vue
有这样的一个需求,后台服务器要求把token放在请求头里面跨域
嗯通常是经过data里面经过参数带过去的服务器
第一种方法cookie
全局改变:app
而后放一个请求成功的实例post
首先会先发一个 OPTIONS 预请求spa
而后发出正式请求code
第二种方法:blog
不能局限于一种方法嘛!token
第二种方法是:在Vue实例中设置
var vm = new Vue({
el:'#app',
data:{
showList: true,
title: null
},
http: {
root: '/',
headers: {
token: token
}
}
})
第三种方法:在拦截器中设置 vue interceptors 设置请求头
Vue.http.interceptors.push((request, next) => {
request.headers.set('token', token); //setting request.headers
next((response) => {
return response
})
})
还能够这样
在在main.js添加过滤器
Vue.http.interceptors.push((request,next)=>{
//request.credentials = true; // 接口每次请求会跨域携带cookie
//request.method= 'POST'; // 请求方式(get,post)
//request.headers.set('token','111') // 请求headers携带参数
next(function(response){
return response;
});
})
Fannie总结
后面的方法要本身去实践哦,我用的是第一种。
而后再次提醒一下,大家自家的服务器要支持这样传token哦~
否则会报个错的,像下面这样
Request header field token is not allowed by Access-Control-Allow-Headers in preflight response.
拜拜了。