【EGG】解决Egg.js跨域问题

安装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'
    };

设置完成后,就可以在浏览器中进行预览了,如果能正常访问,说明跨域访问已经设置成功了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章