您需要在授权选项卡中包含一个 AWS 签名,其中包含有权运行您的 Lex 机器人的 IAM 用户的详细信息。
步骤: 1. 在 AWS 中转到 IAM -> 用户 -> 添加用户
- 给它一个像“myBotUser”这样的用户名,然后选择“程序访问”的访问类型。点击下一步:权限。
- 点击创建组以创建一个组以授予用户权限。
- 为其命名,然后过滤 Lex 的策略 - 并选择“AmazonLexReadOnly”和“AmazonLexRunBotsOnly”。
点击创建组。
- 然后点击“下一步:回顾”。
然后点击“创建用户” - 您的 IAM 用户已准备就绪。您将看到一个访问密钥 ID 和一个秘密访问密钥。
在 Postman 中的 Authorization 中,选择 AWS 签名并输入访问密钥 ID 和秘密访问密钥,以及“us-east-1”的 AWS 区域和“lex”的服务名称:
- 确保您的身体符合要求(这里我只是发送文本):
点击发送,您应该会收到如下回复:
{
"dialogState": "Fulfilled",
"intentName": "yourIntentName",
"message": "A response for that intent",
"responseCard": null,
"sessionAttributes": {},
"slotToElicit": null,
"slots": {}
}
更新
另请注意 - POST url 的格式为:
https://runtime.lex.us-east-1.amazonaws.com/bot/MyBotName/alias/myMyAlias/user/aUniqueUserID/text and it should be a POST
还要确保标头 Content-Type 是 application/json,就像正文一样。