アマゾンはHTML5を使ってCORSのアップロードを許可していますが、誰もが 'html5'ランタイムを使ってs3にファイルをプッシュするようにpluploadを設定することができたという非常に関連した質問(Upload directly to Amazon S3 using Plupload HTML5 runtime)関連する質問に対する回答は実装の詳細を提供しません。ここで'html5'ランタイムでs3に直接pluploadを実装する方法は?
私の現在のplupload構成されています
$("#uploader").plupload({
// General settings
runtimes: 'html5,flash',
url: 'http://s3.amazonaws.com/' + $('#Bucket').val(),
max_file_size: '20mb',
multipart: true,
multipart_params: {
'key': '${filename}', // use filename as a key
'Filename': '${filename}', // adding this to keep consistency across the runtimes
'acl': $('#Acl').val(),
'Content-Type': 'binary/octet-stream',
'success_action_status': '201',
'AWSAccessKeyId': $('#AWSAccessKeyId').val(),
'policy': $('#Policy').val(),
'signature': $('#Signature').val()
},
file_data_name: 'file',
multiple_queues: true,
filters: [
{ title: "Image files", extensions: "jpg,png,gif,jpeg" }
],
flash_swf_url: '/Scripts/plupload/plupload.flash.swf',
});
上記のコードは「フラッシュ」ランタイムのために働いているので、ポリシーが生成され、正しく署名されています。
multipart_params設定オブジェクトに引数がありません。また
、私は私のS3バケットに、次のCORS設定を使用しています:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
</CORSConfiguration>
私は「HTML5」pluploadランタイムからCORSのアップロードを許可するようにS3バケットに他の設定を変更する必要がありますか?
あなたが使用している設定もきれいに見えます。私のものはまさにそのように見えます。 – sunnymtn
入手できます。助けてくれてありがとう。 – njebert
@sunnymtnあなたは私に完全なコードを表示できますか? njebertが示したコードに提供したコードをどのように実装するのか分かりません。 – SReca