Amazon S3 und Cross-Origin Resource Sharing (CORS)
-
12-10-2019 - |
Frage
Hat Amazon S3 ermöglicht benutzerdefinierte Header? Oder bin ich kein Glück?
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, OPTIONS
Access-Control-Allow-Headers: X-SOMETHING
Access-Control-Max-Age: 1728000
Beispiel:
var request = new XMLHttpRequest();
var url = 'http://example.s3.amazonaws.com/templates/welcome.html';
function callOtherDomain(){
request.open('GET', url, true);
request.withCredentials = "true";
request.onreadystatechange = handler;
request.send();
}
Lösung
CORS ist nun offiziell auf S3 unterstützt: http://docs.amazonwebservices.com/AmazonS3/latest /dev/cors.html
Andere Tipps
Derzeit gibt es begrenzte Anzahl von standrd HTTP-Header unterstützt von s3.
Access-Control-Allow- * Header sind zu diesem Zeitpunkt nicht unterstützt: https://forums.aws.amazon.com/thread.jspa?threadID=34281&tstart=0
UPDATE:
Unterstützung für Cross-Origin Resource Sharing wird hinzugefügt: https://forums.aws.amazon.com/ann.jspa?annID= 1620
S3 Browser Freeware unterstützt auch diese Funktion: http://s3browser.com/s3-bucket-cors-configuration.php
Die Liste der unterstützten HTTP-Header kann hier gefunden werden: http : //docs.amazonwebservices.com/AmazonS3/latest/API/index.html RESTObjectPUT.html
Heute Amazon kündigt die vollständige Unterstützung für CORS, so dass Sie jetzt HTML5 zum Beispiel für Drag & Drop können Dateien direkt auf Amazon S3.