安装egg-cors
egg-cors模块是专门用来解决egg.js跨域问题的,只要简单的配置就可以完成跨域的设置,但是跨域一定要谨慎设置,很多安全问题,都是通过跨域进行攻击的。
安装我们使用yarn add
·进行安装,命令如下:
yarn add egg-cors
安装时间根据自己的网络状况不同,有所不同。我用了大概10秒钟左右。
配置config/plugin.js文件
在安装完成后需要对/service/config/plugin.js文件进行修改,加入egg-cors模块即可。
exports.cors: {
enable: true,
package: 'egg-cors'
}
配置config.default.js
在配置完成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.security = {
csrf: {enable: false},
domainWhiteList: [ '*' ]
};
config.cors = {
origin: 'http://localhost:3000', //只允许这个域进行访问接口
credentials: true, // 开启认证
allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS'
};
设置完成后,就可以在浏览器中进行预览了,如果能正常访问,说明跨域访问已经设置成功了。