对于 Web 应用程序,我正在制作一个由 api 网关触发的 AWS Lambda 函数。我将 api 网关链接到 cognito 用户池,因此您需要在触发该功能之前登录。“选项”部分未启用授权,“发布”方法将 cognito 用户池作为授权者。当我按下前端的按钮触发它时,该功能运行正常。我的问题是它context.identity.cognito_identity_id
总是返回一个空值,而不是预期的子 uuid。我不知道这是为什么。我尝试启用“使用调用方凭据调用”,但是当我将鼠标悬停在复选框上时,显示我无法启用它。这是我当前的 lambda 函数:
import json
def lambda_handler(event, context):
UniqueUser = context.identity.cognito_identity_id
if not UniqueUser:
UniqueUser = "fail"
return {
'statusCode': 200,
'headers': {
'Access-Control-Allow-Origin': '*'
},
'body': json.dumps('Hello from Lambda ' + UniqueUser + "!")
};
我怎样才能使它context.identity.cognito_identity_id
(或类似的东西)返回我认为应该的用户的 uuid?