如何使用rest api从dynamodb获取数据

时间:2012-06-28 09:25:53

标签: amazon-dynamodb

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

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

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

如果有人尝试使用DynamoDB RESTful API,您能举例说明如何获取表格数据吗?

示例网址也很好,显示了如何通过RESTful API连接到DynamoDB。

理想情况下,需要所有参数的示例网址。

4 个答案:

答案 0 :(得分:10)

答案 1 :(得分:0)

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

答案 2 :(得分:0)

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

答案 3 :(得分:0)

以下是通过 AWS API 对 DynamoDB 表执行 GetItem 操作的最小 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 doc

相关问题