【问题标题】:Method Aws\S3\S3Client::putObject() does not exist方法 Aws\S3\S3Client::putObject() 不存在
【发布时间】:2017-07-19 23:49:25
【问题描述】:

在我的应用程序中,我试图将图像从本地目录上传到亚马逊 S3 存储桶,该目录首先上传。当我上传文件时,我收到错误。我不知道要更改什么。是供应商有什么要更改或添加的吗?请帮忙。

控制器:

$s = new Storage();
$result = $s->upload($bucket,$keyname,$filepath);

模型\Storage.php:

<?php
namespace app\models;
use Yii;
use yii\base\Model;
 
class Storage extends Model
{
 
  private $aws;
  private $s3;
 
   function __construct() {
     $this->aws = Yii::$app->awssdk->getAwsSdk();
     $this->s3 = $this->aws->createS3();
  }
  
    public function upload($bucket,$keyname,$filepath) {
        $result = $this->s3->putObject(array(
        'Bucket'       => $bucket,
        'Key'          => $keyname,
        'SourceFile'   => $filepath,
        'ContentType'  => 'text/plain',
        'ACL'          => 'public-read',
        'StorageClass' => 'REDUCED_REDUNDANCY',
        'Metadata'     => array(
            'param1' => 'value 1',
            'param2' => 'value 2'
        )
    ));
    return $result;

    }

错误如下:

处理另一个错误时发生错误:

带有消息“方法”的异常“ReflectionException” Aws\S3\S3Client::putObject() 不存在' D:\xampp\htdocs\teespring-testmailer\vendor\yiisoft\yii2\web\ErrorHandler.php:195

【问题讨论】:

  • 尝试拨打PutObject而不是putObject
  • 不会出现同样的错误@SiZE
  • 您的供应商和方法中有此类Aws\S3\S3Client 吗?你使用什么版本的库?
  • 你是默认的..
  • 在我使用的所有应用程序中,我只像这样使用..这和这段代码没有什么不同..但是这段代码显示错误..所有参数都是正确的..

标签: php amazon-web-services amazon-s3 yii2


【解决方案1】:

我在 config\web.php 中输入了错误的区域名称。这就是问题所在。我更改了区域然后它运行良好。

'awssdk' => [
            'class' => 'fedemotta\awssdk\AwsSdk',
            'credentials' => [ //you can use a different method to grant access
                'key' => 'XXXXXXXXXXXXXXXXX',
                'secret' => 'XXXXXXXXXXXXXXXXXXXXX',
            ],
            'region' => 'us-west-2', //before 'us-east-1'
            'version' => 'latest', 
        ],

【讨论】:

    猜你喜欢
    • 2016-12-29
    • 1970-01-01
    • 2018-08-17
    • 2021-06-28
    • 2016-10-08
    • 1970-01-01
    • 2017-12-06
    • 2020-12-22
    • 2022-01-10
    相关资源
    最近更新 更多