2

SDK を使用して画像をアップロードしようとしましたが、次のエラーが発生します。

致命的なエラー: Uncaught Aws\Glacier\Exception\GlacierException: AWS エラー コード: 、ステータス コード: 400、AWS リクエスト ID: 、AWS エラー タイプ: クライアント、AWS エラー メッセージ: 、ユーザー エージェント: aws-sdk-php2/2.4。 3 Guzzle/3.7.2 curl/7.15.5 PHP/5.3.8 が 91 行目の /www/site/test/Aws/Common/Exception/NamespaceExceptionFactory.php でスローされる

そして、これは私のテストコードです:

 <?php
 // Include the SDK using the Composer autoloader
 require 'aws-autoloader.php';
  use Aws\Glacier\GlacierClient;

    $client = GlacierClient::factory(array(
     'key'    => 'xxxxxxx',
     'secret' => 'xxxxxxxx',
     'region' => 'us-east-1' // (e.g., us-west-2)
    ));

    $vaultName = 'http://xxx.xxx.xxx/vrs/images/album/default/pp.jpg';
    $filename = '/www/site/test/pp.jpg';

   $result = $client->uploadArchive(array(
     'vaultName' => $vaultName,
     'body'      => fopen($filename, 'r'),
    ));
    $archiveId = $result->get('archiveId');

    var_dump($archiveId);

どんな助けでも大歓迎です:)

4

1 に答える 1

1

ボールトとアーカイブの違いについて混乱しているようです。Amazon Glacier 開発者ガイドに目を通して、 Glacierの基本的な概念を理解してください。アーカイブをアップロードするには、まずボールトを作成する必要があります。Glacier のボールトは S3 のバケットに似ています。

Glacier でアップロードを行うためのコード サンプルを提供する次のリンクも確認してください。

于 2013-08-22T23:49:29.470 に答える