我正在构建一个用作静态JS应用程序的概念证明UI(只是Netlify上的免费静态托管),我希望能够将数据读写到NoSQL数据库中。
由于它是PoC,因此我需要保持其100%免费。请求率将非常低;只有少数人能看到它。对于大小和成本(0美元),DynamoDB似乎是一个不错的选择。
那么从浏览器客户端从DynamoDB读取/写入数据的最简单的方法是什么?很难说出什么是绝对必要的。理想情况下,我将直接连接到数据库(没有API网关,没有lambda),同时保持某种基准安全性。
答案 0 :(得分:2)
您可以使用aws sdk for browser,
从浏览器查询dynamodb。您将需要仔细创建访问权限受限的IAM用户(例如,没有updateTable权限等)
请记住,任何人都可以劫持您的访问密钥,从而增加吞吐量并产生成本(如果他们具有updateTable priv。),或者在您的网站之外查询您的表并消耗所有可用容量。
我仍然会使用API网关/ lambda
答案 1 :(得分:0)
对于简单的DynamoDB请求,不需要API网关/ lambda。我建议将AWS Cognito与AWS Amplify Auth Library一起使用以访问DynamoDB。然后使用像Dynamo-Easy这样的客户端,它具有一些不错的抽象性,因此您可以快速开始开发,而无需从AWS学习DynamoDB JS客户端的基础知识。