vue怎么让接口带上cookie_vue get/post请求如何携带cookie的问题

一:

只需要在main.js中写这三行代码即可

import axios from 'axios'

axios.defaults.withCredentials=true;//让ajax携带cookie

Vue.prototype.$axios = axios;

如果cookie携带不过去的话,请求响应的时候他会报错显示登陆过期的呦!!!

顺便说一下原生js携带cookie的方法:

xhrFields: {

withCredentials: true

},

当我们使用vue请求的时候,我们会发现请求头中没有携带cookie传给后台,我们可以在请求时添加如下代码:

vue.http.options.xhr = { withCredentials: true}; 的作用就是允许跨域请求携带cookie做身份认证的;

vue.http.options.emulateJSON = true; 的作用是如果web服务器无法处理 application/json的请求,我们可以启用 emulateJSON 选项;

启用该选项后请求会以application/x-www-form-urlencoded 作为MIME type, 和普通的html表单一样。 加上如下代码,get请求返回的代码会

携带cookie,但是post不会;

为了方便,我们这边是封装了一个get请求,只要在get请求添加参数 { credentials: true } 即可使用;

const ajaxGet = (url, fn) =>{

l

你可能感兴趣的:(vue怎么让接口带上cookie_vue get/post请求如何携带cookie的问题)