AWS CLI 无法向 API 网关阶段变量添加权限

AWS CLI unable to add permissions to API Gateway Stage variables

我一直在尝试使用 AWS CLI 将阶段变量添加到我的 API Gateway Lambda 函数, 我尝试传递的命令是:

aws lambda add-permission --function-name "arn:aws:lambda:me-south-1:xxxxxxxxxxxx:function:SignInUser:ifapos" --source-arn "arn:aws:execute-api:me-south-1:xxxxxxxxxxxx:xxxxxxxxxxxx/*/GET/users" --principal apigateway.amazonaws.com --statement-id xxxxxxxxxxxxxxxxxxx --action lambda:InvokeFunction —region me-south-1

但我无法添加权限,而是得到:

Invalid choice: 'add-permission\xa0', maybe you meant:

  * add-permission

或:

aws: error: argument operation: Invalid choice, valid choices are:

我该如何解决这个问题?

您的命令中有一个 non-breaking space(错误也告诉您)。

仔细看看:

Invalid choice: 'add-permission\xa0' [...]

重要的一点是 \xa0。这是导致此问题的“特殊”字符。

只需删除它,命令就会按预期运行。