为什么我无法在Laravel中使用AWS SDK正确解析JSON?

时间:2018-01-19 16:48:29

标签: php json amazon-web-services laravel-5 amazon-s3

我正在使用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并在网上搜索,我只是没有得到问题所在。任何帮助都是绝对的!

1 个答案:

答案 0 :(得分:0)

确定。我的问题是我使用的是端口80.它应该是端口8000。