安裝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'
};
設置完成後,就可以在瀏覽器中進行預覽了,如果能正常訪問,說明跨域訪問已經設置成功了。