1. 程式人生 > >Vue 2.0允許跨域攜帶cookie

Vue 2.0允許跨域攜帶cookie

場景:後臺在response header中寫入cookie,當前端傳送請求時,帶cookie請求,後臺根據cookie的有效期判斷當前登入狀態是否超時。 1、前端未做配置之前,header資訊,如下圖: 2、如何配置? 首先,需要再main.js檔案中引入 import VueResource from 'vue-resource';Vue.use(VueResource); 其次, Vue.http.options.xhr = { withCredentials: true };
Vue.http.options.emulateJSON = true; Vue.http.options.crossOrigin = true; Vue.http.interceptors.push(function(request, next) {//攔截器 // 跨域攜帶cookie request.credentials = true; next() }) 說明一下,如果不引入 vue-resource ,在這裡會報錯options undefined; 經過幾番詢問度娘,基本的跨域攜帶cookie前端配置,大多都是這種思路,但是,截止目前為止在request header裡還是沒有找到cookie的身影; 但是當,更改跨域屬性的方式改成 axios.defaults.withCredentials = true;在 request header 中就有了cookie欄位,推測是因為使用的是vue2.0 版本,http 請求的寫法是,this.$axios.get/post… ,所以在新增withCredentials屬性時,要使用第二種方式。

3、 參考1:https://www.cnblogs.com/congxueda/p/7123034.html 參考2:https://blog.csdn.net/bobobocai/article/details/81557198