将 CORS 与 AWS SAM 结合使用

K..*_*K.. 5 amazon-web-services aws-lambda aws-api-gateway

我创建了一些由 API-Gateway 事件触发的 Lambda 函数。

现在我想为这些端点启用 CORS,但它似乎不起作用。在 AWS SAM 的最后几个版本中,添加或更新了 CORS 功能,但我仍然无法让它工作。

这是我尝试过的:

Gobals:
  Api:
    Cors: "'*'"
Run Code Online (Sandbox Code Playgroud)

Mai*_*KaY 6

你忘记添加AllowOrigin属性了。

它需要看起来像这样:

Globals:
  Api:
    Cors:
      AllowOrigin: "'*'"
Run Code Online (Sandbox Code Playgroud)


Tob*_*eil 4

您还可以在 lambda 处理程序中指定这些(Python 示例):

return {
        'statusCode': status_code,
        'headers': {
            'Content-Type': 'application/json',
            'Access-Control-Allow-Origin': '*'
        },
        'body': status_message if status_code == 200 else 'Failure'
    }
Run Code Online (Sandbox Code Playgroud)