Lambda函数无法直接设置CORS头,但可以通过API网关来实现CORS支持。API网关可以在请求和响应之间拦截,并设置CORS头。
以下是设置CORS头的Lambda函数代码:
import json
def lambda_handler(event, context):
response = {
'statusCode': 200,
'headers': {
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Credentials': True
},
'body': json.dumps('Hello from Lambda!')
}
return response
此代码片段返回JSON响应,并设置了Access-Control-Allow-Origin和Access-Control-Allow-Credentials头。API网关将从Lambda函数返回的响应转换为HTTP响应,并在其中包含这些CORS头。
以下是如何在API网关中启用CORS支持的步骤:
创建一个新的API网关或打开现有的API网关。
选择要为其启用CORS的资源。
在所选资源的导航窗格中,选择“操作” - >“CORS配置”。
在“CORS配置”面板中,选择要允许的源、方法和头。
单击“保存”。
完成后,API网关将在请求和响应中包含CORS头。现在,您的Lambda函数URL应该返回正确的CORS头以进行预检请求。