如何在CORS配置中添加两个CLIENT_URL解决跨域拦截问题
解决多域名CORS访问限制问题
报错信息
从源 '' 获取资源时被CORS策略阻止(Access to fetch at '' from origin '' has been blocked by CORS policy)
解决方案
要支持两个客户端域名,只需修改环境变量配置和allowedOrigins.js文件即可,具体步骤如下:
- 配置多域名环境变量
将两个客户端域名用逗号分隔配置到CLIENT_URL中,示例:
CLIENT_URL=https://your-first-domain.com,https://your-second-domain.com
- 修改allowedOrigins.js文件
把原本单元素数组的代码改成从环境变量分割生成数组,自动适配多个域名:
// allowedOrigins.js module.exports = process.env.CLIENT_URL.split(',').map(url => url.trim());
- 保留原有校验逻辑
你的corsoption.js和server.js代码无需修改,现有origin校验逻辑会自动检查请求来源是否在allowedOrigins数组中,同时兼容无origin的请求场景(如Postman测试)。
注意事项
- 每个域名必须带上完整协议(http/https),不能省略
trim()方法用于处理域名前后可能出现的空格,避免匹配失败- 后续添加更多域名时,只需在环境变量中追加逗号和新域名即可,无需改动其他代码
内容的提问来源于stack exchange,提问作者samurai
相关产品推荐
相关产品推荐

