如何部署我的 AWS 解决方案以避免 CORS 问题?

Posted

技术标签:

【中文标题】如何部署我的 AWS 解决方案以避免 CORS 问题?【英文标题】:How to deploy my AWS solution in order to avoid CORS issues? 【发布时间】:2022-01-16 18:45:45 【问题描述】:

我有一个基于两个主要组件的应用程序:

托管在 S3 存储桶上的 React 应用程序https://app.com/ 在 Elastic Beanstalk 环境中托管的 Express 应用程序https://api.app.com

由于 https://app.com/https://api.app.com 不同,我在 Firefox 上收到了 CORS 错误并且数据未传递。

如何设置我的 Route 53 记录,以便实现我的应用程序所需的内容? (S3和Beanstalk在同一个域下?) 我更改命名(api.app.com)没有问题,我只是不知道该怎么做:)

【问题讨论】:

【参考方案1】:

这段代码成功了:

//Enabling cors
var allowedOrigins = [
  'https://app.com', 
  'http://app.com'];
  
app.use(cors(
  origin: function(origin, callback)
    if(!origin) return callback(null, true);
    if(allowedOrigins.indexOf(origin) === -1)
      var msg = 'Forbidden!';
      return callback(new Error(msg), false);
    
    return callback(null, true);
  
));

【讨论】:

以上是关于如何部署我的 AWS 解决方案以避免 CORS 问题?的主要内容,如果未能解决你的问题,请参考以下文章

AWS API 网关 CORS [关闭]

AWS 弹性豆茎上的 CORS

如何使用 html2Canvas 和 AWS S3 图像处理 CORS?

将 AWS Amplify 前端连接到 AWS Elastic Beanstalk 后端时出现 CORS 问题

如何正确设置 GET/POST 获取的标头以避免 CORS

AWS 中的 403 OPTIONS Cors 错误,预检请求