作者: 文章来源:
本文原地址:https://www.mimiwuqi.com/webqianduan/197238.html
目录文章目录在上一篇笔记中项目最后预览时,我们遇到了跨域问题。这个是每个前后端分离的程序都会遇到的一个问题。本文就带大家解决这个跨域问题。
egg-cors模块是专门用来解决egg.js跨域问题的,只要简单的配置就可以完成跨域的设置,但是跨域一定要谨慎设置,很多安全问题,都是通过跨域进行攻击的。
安装我们使用npm进行安装,命令如下:
npm install --save egg-cors
当然你也可以用yarn来安装
yarn add egg-cors
在安装完成后需要对/service/config/plugin.js文件进行修改,加入egg-cors模块即可。
exports.cors = {
enable: true,
package: 'egg-cors',
};
在配置完成plugin.js文件以后,还需要设置config.default.js文件。这个文件主要设置的是允许什么域名和请求方法可以进行跨域访问。配置代码如下。
config.security = {
csrf: {
enable: false,
},
domainWhiteList: [ '*' ],
};
config.cors = {
origin: '*', // 允许所有域进行访问接口
allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS',
};
当然,如果你只想让http://localhost:3000来进行接口方案,就可以设置成下面的代码。
config.cors = {
origin: 'http://localhost:3000', // 只允许这个域进行访问接口
credentials: true, // 开启认证
allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS',
};
设置完成后,重启服务,就可以在浏览器中进行预览了,如果能正常访问,说明跨域访问已经设置成功了。
更多 建站教程 请访问 https://www.mimiwuqi.com/webqianduan/