首页 > 解决方案 > 如何通过 url 调用 AWS API 将 PutItem 放入 DynamoDB 表中?

问题描述

所以我试图从我的 AWS API Gateway 执行一个 PutItem 请求。我试图通过使用路径 /storeid/{username}/{password} 来做到这一点。我已将映射作为 json 完成,API 中的测试运行良好,我看到我的数据显示在我的 DynamoDB 表中,但是当我部署 API 并尝试调用此请求时,我收到以下响应:{“message”:“缺少身份验证令牌"}。此请求没有任何授权或 API 密钥要求。为什么调用时测试有效,但 url 无效。ps-是的,我输入了正确的网址

请帮忙!

标签: amazon-web-servicesamazon-dynamodbaws-api-gatewayput

解决方案


需要检查的几件事

  1. 验证您的方法请求设置中的授权是否设置为无(即不是 IAM)。
  2. 验证您是否已将 API 更改部署到阶段。使用控制台,单击操作 -> 部署 API。
  3. 部署后,当您选择部署到的阶段时,应显示要使用的 URL。验证您使用的是正确的 URL。

另外,请注意,将密码放在 URL 路径或查询参数中是一个非常糟糕的主意。考虑将请求正文中的数据作为 POST 发送,并执行 HTTPS 和散列等操作来保护密码。


推荐阅读