Jest to wspomniane w tym bardzo pokrewnym pytaniu (Upload directly to Amazon S3 using Plupload HTML5 runtime), że Amazon zezwala teraz na przesyłanie CORS za pomocą HTML5, ale czy ktoś pomyślnie skonfigurował plupload do przesyłania plików do s3 przy użyciu środowiska wykonawczego "html5"? Odpowiedzi na powiązane pytanie nie oferują żadnych szczegółów dotyczących implementacji.Jak zaimplementować plupload bezpośrednio na s3 przy użyciu środowiska wykonawczego "html5"?
Oto moja obecna konfiguracja 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',
});
Powyższy kod działa dla „Flash” wykonywania, więc polityka jest generowany i podpisany prawidłowo.
Czy brakuje mi jakichkolwiek argumentów w obiekcie konfiguracyjnym multipart_params?
Również używam następującą konfigurację CORS na moim s3 wiadra:
<?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>
Czy muszę dokonywać żadnych innych zmian konfiguracyjnych do wiadra s3, aby umożliwić przesyłanie Cors z plupload starcie z „HTML5”?
CORS konfiguracja, której używasz, również wygląda dobrze. Mój wygląda dokładnie tak. – sunnymtn
Mam to. Dzięki za pomoc. – njebert
@sunnymtn czy możesz pokazać mi pełny kod? Nie rozumiem, jak zaimplementowałeś kod, który podałeś do kodu, który pokazał njebert. – SReca