Korrekte S3 + Cloudfront CORS-Konfiguration?

Meine Anwendung speichert Bilder auf S3 und dann proxies, die Ihnen durch Cloudfront. Ich bin begeistert davon, wie die neue S3-CORS-support, so dass ich kann verwenden das HTML5 canvas-Element-Methoden (die ein cross-origin-policy), kann Sie aber nicht konfigurieren mein S3 und Cloudfront richtig. Noch läuft in "nicht abgefangener Fehler: SECURITY_ERR: DOM Exception 18", wenn ich versuche, Sie zu konvertieren Sie ein Bild in ein canvas-element.

Hier ist, was ich habe, so weit:

S3

<CORSConfiguration>
  <CORSRule>
    <AllowedOrigin>MY_WEBSITE_URL</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>*</AllowedHeader>
  </CORSRule>
  <CORSRule>
    <AllowedOrigin>MY_CLOUDFRONT_URL</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedHeader>*</AllowedHeader>
    </CORSRule>
  </CORSConfiguration>

Cloudfront

Herkunft

Origin Protocol Policy: Match Viewer

HTTP Port: 80

HTTPS Port: 443

Verhalten

Origin: MY_WEBSITE_URL

Object Caching: Use Origin Cache Headers

Forward Cookies: None

Forward Query Strings: Yes

Gibt es etwas, was fehlt mir hier?

UPDATE :
Nur versucht, die änderung der überschriften zu

<AllowedHeader>Content-*</AllowedHeader>
<AllowedHeader>Host</AllowedHeader>

basierend auf dieser Frage Amazon S3 CORS (Cross-Origin Resource Sharing) und Firefox-cross-domain-schriftart laden

Immer noch nicht gehen.

UPDATE: MEHR INFO AUF ANFRAGE

Request
URL:https://d1r5nr1emc2xy5.cloudfront.net/uploaded/BAhbBlsHOgZmSSImMjAxMi8wOS8xMC8xOC81NC80Mi85NC9ncmFzczMuanBnBjoGRVQ/32c0cee8
Request Method:GET
Status Code:200 OK (from cache)

UPDATE

Ich denke, meine Anfrage war nicht korrekt, also habe ich versucht die Aktivierung CORS mit

img.crossOrigin = '';

aber dann das Bild nicht geladen und ich bekomme die Fehlermeldung: Cross-origin-image laden verweigert, um Cross-Origin Resource Sharing policy.

Kommentar zu dem Problem
können Sie Ihre post-Anforderung hier ?. wie in Ihren politischen und übergebenen Parameter in post-Anforderung, die beim hochladen in s3. Kommentarautor: Avichal Badaya
warum die POST-Anfrage im Gegensatz zur GET-Anfrage? Kommentarautor: kateray
ok, Sie geben Informationen über die get Anfrage ? Kommentarautor: Avichal Badaya
es ist nur ein 'src' - gibt es eine andere Möglichkeit, die ich sein sollte, die Formatierung der Anfrage? Kommentarautor: kateray
sind Sie in der Lage, zum speichern der Bilder auf s3 ?. ist dies das problem, das Sie immer beim abrufen der Bild? versuchen Sie mit dem link aus Abschnitt details der s3-Objekt. es wird so etwas wie /" >s3.amazonaws.com/<bucketname>... und prüfen Sie, ob Sie weiterhin die Fehlermeldung erhalten.Ich hatte implementiert, die genau das gleiche mit CORS, so, wenn Sie mir mehr details , ich kann Ihnen helfen. Kommentarautor: Avichal Badaya

InformationsquelleAutor der Frage kateray | 2012-09-10

Schreibe einen Kommentar