我需要AWS dynamodb作为我项目的后端..我已经完成了以下任务:
完成所有这些任务后,localhost会给我一条消息,说明'table created'。但是我无法在AWS控制台中找到我的表。可能是什么问题?。
我做得对吗? ..有人可以对此有所了解吗?
这是我通过PHP的连接:
$client = new Aws\Sdk([
//'profile' => 'default',
'region' => 'us-west-2',
'version' => 'latest',
'endpoint' => 'http://localhost:8000',
'credentials' => [
'key' => '',
'secret' => '']
]);
答案 0 :(得分:1)
首先,当您使用本地主机时,该表将在您的本地计算机中创建(即不在AWS中)。您已经提到了AWS控制台,我了解到您正在寻找“AWS管理控制台”上的表格。当您将端点用作“http://localhost:8000”时,API将永远不会与实际AWS交互。
它指的是本地dynamodb实例。
检查本地dynamodb实例上的表格: -
1)如果您的系统上安装了AWS CLI,则可以使用以下命令检查表的存在。
aws dynamodb describe-table --table-name yourTableName --endpoint-url http://localhost:8000
2)否则,请转到http://localhost:8000/shell/
var docClient = new AWS.DynamoDB({
region: 'us-east-1',
endpoint: "http://localhost:8000"
});
var params = {TableName:'yourTableName'};
docClient.describeTable(params, function(err, data) {
if (err) {
console.log(err, err.stack);
} else {
console.log(data);
// php.var_dump(data);
}
});
如果表存在: -
它将显示表的定义
如果表格不存在: -
您将收到以下错误消息。
"message":"Cannot do operations on a non-existent table"