amazon-web-services - Mac OS 上的 API 网关 axios 网络错误
问题描述
我正在尝试从我的 ReactJS 应用程序(Mac)调用带有 axios 的 API。但我不断收到此错误消息,
从源“ https://localhost:3000 ”访问“ https://api_url/ ”处的 XMLHttpRequest已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:否 'Access-Control-Allow- Origin' 标头存在于请求的资源上。
我参考了其他stackoverflow答案,但错误仍然存在。我不知道我在哪里犯了错误,无论是在 AWS 后端还是前端。如果有人有想法或解决方案,请分享。
提前致谢,
解决方案
这是由于默认情况下禁用了跨域资源共享 (CORS)。
您的 React 应用程序来自不同的域(例如https://localhost:3000),因此默认情况下无法调用远程服务器(例如' https://api_url/)。
请参阅Wikipedia和enable-cors以获得很好的解释。
这必须明确启用。
AWS API Gateway 将允许您从 UI 执行此操作。
- 在 UI 中选择您的 API
- 在操作下拉列表中选择“启用 CORS”
- 按照表格启用,您应该一切顺利!
推荐阅读
- tinymce - 如何将“rel = nofollow”添加到所有“a”标签?
- python - 有没有办法使用 combination() 返回 [i]+[j] 大小排列的列表?
- postgresql - PostgreSQL 目录没有出现在数据库所说的位置
- flutter - 如何在 Flutter 中从 GoogleSignIn 获取额外的范围?
- python - 训练自定义模型
- html - 为什么我的代码在移动视图中没有覆盖整个屏幕它只覆盖了一半的屏幕
- excel - Excel:获取保存在文件中的易失性函数的当前值
- c++ - 通用初始化的工作导致析构函数被额外调用一次
- python - Python 正则表达式:仅当单词前面有空格和逗号或单词是起始词时
- kotlin - 混合值的枚举(常量和数据类)