【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'
    };

設置完成後,就可以在瀏覽器中進行預覽了,如果能正常訪問,說明跨域訪問已經設置成功了。

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