相关疑难解决方法(0)

在AWS Lambda中将DynamoDB数据格式化为普通JSON

我正在使用AWS Lambda扫描DynamoDB表中的数据.这是我得到的回报:

{
  "videos": [
    {
      "file": {
        "S": "file1.mp4"
      },
      "id": {
        "S": "1"
      },
      "canvas": {
        "S": "This is Canvas1"
      }
    },
    {
      "file": {
        "S": "main.mp4"
      },
      "id": {
        "S": "0"
      },
      "canvas": {
        "S": "this is a canvas"
      }
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

我的前端应用程序正在使用Ember Data Rest Adapter,它不接受此类响应.有什么方法可以获得正常的JSON格式吗?有一个NPM模块被调用dynamodb-marshaler来将DynamoDB数据转换为普通的JSON.如果可能的话,我正在寻找原生解决方案.

json amazon-web-services amazon-dynamodb aws-lambda

36
推荐指数
6
解决办法
3万
查看次数

如何使用boto3手动将DynamoDB有线协议转换为本机Python对象?

我有一个由DynamoDB流触发的Lambda.Lambda进行一些处理,然后在SNS中的主题上创建通知.理想情况下,我希望将整个新文档包含在发送到SNS的通知中,以便下游客户端不必命中DynamoDB来获取数据.

我遇到的问题是来自DynamoDB流的数据是DynamoDB有线格式(地图包括数据类型作为键).当我向下游客户端发送通知时,我不希望他们必须了解DynamoDB有线格式来解析消息(例如,如果我切换到新的底层数据存储,我将不得不重新创建该格式).

显然boto3客户端能够将这种格式解析为Python对象,有没有办法让我自己访问解析器?据我所知,它被称为从DynamoDB获取数据的一部分,但我无法找到自己调用它的方法.

python boto amazon-dynamodb boto3

9
推荐指数
1
解决办法
3462
查看次数