我有一个启用了CORS的AWS API Gateway API和一个自定义域设置。通过execute-api
端点的直接API访问正在运行,并且在浏览器中没有CORS问题。原则上,通过自定义域api.example.com
的访问是正常工作的,但不能在获得CORS的浏览器中进行访问:
Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
设置自定义域时,API Gateway会配置自己的CloudFront发行版,该发行版在内部是有些内部的,我看不到如何进行配置,或者甚至无法配置,它也不会显示在我的CloudFront发行版列表中。是期待。从AWS docs:
API Gateway创建的CloudFront发行版由 与API网关关联的特定于区域的帐户
我找到了这些答案https://stackoverflow.com/a/52435619/4556546和https://stackoverflow.com/a/51463965/4556546,它们描述了如何使用正常的CloudFront发行版解决问题。但我很想知道: