- 首先 前台如何使用 axios发送cookies呢?
- 后台如何接收呢?
配置如下
import axios from ‘axios’
// 进行一些全局配置
axios.defaults.baseURL = ‘http://127.0.0.1:7001’; //egg后台的地址
axios.defaults.timeout = 5000;
axios.defaults.withCredentials = true; // 让axios发送请求的时候带上cookie
前台axios携带 cookies ,还需要 后台配置 让你携带
npm install egg-cors 下载这个插件
在 config/pugin 下配置
import {EggPlugin} from ‘egg’;
const plugin: EggPlugin = {
cors :{
enable: true,
package: ‘egg-cors’
}
};
export default plugin;
在来到config.default 中
config.cors = {
origin:‘http://192.168.31.227:8080’, //那个前台可以跨域
credentials: true, //前台可以携带cookies
allowMethods: ‘GET,HEAD,PUT,POST,DELETE,PATCH’ //那些方式可以跨域
};
但是如果 你发现 还不行 ,不是你的问题 是浏览器的问题
找到network 你会发现 你的 set-cookies 后面有一个⚠️
就是它的问题
his set-cookie didn’t specify a “SameSite” attribute and was defaulted to “SameSite=Lax” and broke the same rules specified in the SameSiteLax value
怎么办呢?
Google浏览器访问 chrome://flags/#same-site-by-default-cookies地址,设置cookie的该选项为禁用,然后重启浏览器。 第一个就是