我正在使用Laravel 5.5和AWS SDK for laravel(https://github.com/aws/aws-sdk-php-laravel)。
我正在尝试做一个简单的请求来确定我正确连接。我相信我的所有凭证都已设置,并且没有任何内容指出这是一个错误。
这是我的laravel控制器中正在调用的函数:
public function testData(Request $request) {
$sdk = new Sdk([
'endpoint' => 'http://localhost:80',
'region' => 'us-east-1',
'version' => 'latest'
]);
$dynamodb = $sdk->createDynamoDb();
$marshaler = new Marshaler();
$tableName = 'funTalkDataStorage';
$params = [
'TableName' => $tableName
];
try {
$result = $dynamodb->query($params);
} catch (DynamoDbException $e) {
echo "Unable to query:\n";
echo $e->getMessage() . "\n";
}
}
表'funTalkDataStorage'确实存在于已有两条记录的AWS上。
我不理解的是为什么我从Laravel得到以下错误:
Aws \ Api \ Parser \ Exception \ ParserException 解析JSON时出错:语法错误
被抛出:
AWS \ AWS-SDK-PHP中\ SRC \阿比\分析器\ PayloadParserTrait.php
错误源自我的代码中的行:
$result = $dynamodb->query($params);
我一直在挖掘sdk并在网上搜索,我只是没有得到问题所在。任何帮助都是绝对的!
答案 0 :(得分:0)
确定。我的问题是我使用的是端口80.它应该是端口8000。