2016-07-21 5 views
0

を取得こんにちは、私はAmazon S3の中にアップロードされた画像のURLを取得したいMVCアプリケーションを持っていますが、URLを取得するには、ブラウザ コードにオープン取得するそのことはできませんURLを取得した後SignatureDoesNotMatch presigned URL

ありながら、
var expiryUrlRequest = new GetPreSignedUrlRequest(); 
     expiryUrlRequest.BucketName = BUCKET_NAME; 
     expiryUrlRequest.Key = "uploads/participantid_" + v1+ "/taskid_" + v2 + "/" + 0 + ".mp4"; 
     expiryUrlRequest.ContentType = "Video/mp4"; 
     expiryUrlRequest.Expires = DateTime.Now.AddYears(10); 

    string url = client.GetPreSignedURL(expiryUrlRequest); 

私もURLを取得しますが、ブラウザにペーストした後に署名が一致しないことを示します。

+0

GetPreSignedUrlRequestのコードを貼り付けることはできますか? – error2007s

+0

すでにamazonで実装されているメソッドで、expiryUrlRequestオブジェクトをそのメソッドに送信しています。 – User1710

+0

SDKのバージョンは何ですか? – error2007s

答えて

0

登録済みのURLを生成してhtmlにバインドした後。 16進数の値を持つ署名がアスキー記号に変わります。

する

0

ヒント進値なしpresigned URLの署名を作成することを確認してください:

  1. 動詞を指定します。 expiryUrlRequest.Verb = HttpVerb.GET。 (
  2. 使っ7日未満である有効期限:
  3. はIAM役割/そのアクセスキーを使用すると、このバケットへのアクセスに使用しているAWSアカウントが、バケットへのアクセスを許可するかどうかバケットポリシー(https://awspolicygen.s3.amazonaws.com/policygen.html使用ツール)をチェック
  4. 「ビデオ/ mp4」(ショットに値する)としてContentTypeを試してみてください。この問題を解決するには役立ちません。
関連する問題