16

如何使用 RESTful API 获取 Amazon DynamoDB 数据?

有没有办法使用 REST url 获取 Amazon DynamoDB 数据,如果有,传递 url 所需的参数是什么?

我们已将 DynamoDB 端点视为 url,并将其附加到accesskeysecretaccesskey,是否还需要附加到 url?

如果有人用 DynamoDB RESTful API 试过这个,你能给我一个如何获取表数据的例子吗?

一个示例 url 也很好,它显示了如何通过 RESTful API 连接到 DynamoDB。

理想情况下,一个包含所有所需参数的示例 url。

4

4 回答 4

12

有一个 AWS 文档,包括一个示例:

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/MakingHTTPRequests.html

于 2013-09-17T15:42:49.013 回答
2

这不是 Dynamo 的工作方式,您必须构建自己的 RESTful API(即使用适用于 PHP 的 AWS 开发工具包)来访问 Dynamo,将数据重新格式化为您想要的格式,然后将其返回。很容易做到:-)

于 2012-06-28T19:24:40.263 回答
2

您可以使用指向 Lambda 函数的 API 网关从 DynamoDB 中获取数据。您的 API 网关 URL 的端点将是您的休息端点。

于 2017-10-17T05:05:45.500 回答
0

GetItem以下是通过 AWS API 对 DynamoDB 表执行操作的最小 JavaScript 示例:

const DYNAMODB_ENDPOINT = 'https://dynamodb.us-east-1.amazonaws.com';
let aws = new AwsClient({ accessKeyId: AWS_ACCESS_KEY, secretAccessKey: AWS_SECRET_KEY });

async function dynamoDbOp(op, opBody) {
    let result = await aws.fetch(DYNAMODB_ENDPOINT, {
        method: 'POST',
        headers: {
            'Content-Type': 'application/x-amz-json-1.0',
            'X-Amz-Target': 'DynamoDB_20120810.' + op
        },
        body: JSON.stringify(opBody)
    });

    return result.json();
}

let dbResponse = await dynamoDbOp('GetItem', {
    TableName: "someTableName",
    Key: {
        someTableKey: {
            S: "someKeyValue"
        }
    }
});

console.log(dbResponse.json());

请注意,这AwsClient是一个由aws4fetch定义的类,它负责为您签署 AWS 请求。有关更多信息,请参阅AWS GetItem API 文档

于 2021-03-05T21:01:35.397 回答