【发布时间】:2019-04-21 15:26:39
【问题描述】:
我是 AWS 新手并使用过
- Elastic beanstalk 在节点中部署我的 REST API (api.example.com)
- 和 S3 存储桶 和 cloudfront 用于我在 React 中的静态网站 (example.com)。
从网站调用 API 端点时,浏览器出现 CORS 错误。我该如何预防呢?
我在 CORS 的节点项目中使用以下代码
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*')
res.header('Access-Control-Allow-Credentials', true)
res.header('Access-Control-Allow-Methods', 'POST, GET, OPTIONS')
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept')
next();
});
编辑 - 基于 arudzinska 的评论
我也在bucket中配置了CORS
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
</CORSRule>
</CORSConfiguration>
并且服务器在 nginx
提前感谢您的帮助
P.S - 另外,我看到很少有帖子给出原因,因为项目代码中会有一些错误,但所有端点都在 POSTMAN 上正常工作。
【问题讨论】:
-
您是否也在您的存储桶上配置了 CORS?
-
是的,我在桶里做了,请查看更新后的问题
-
@Aman 找到解决方案了吗?
-
请检查我的回答@ZeferiniX
标签: amazon-web-services nginx cors amazon-elastic-beanstalk