Ich mache eine Fetch-Anfrage von Domäne A zu einem Bild auf Domäne B. Ich habe die richtigen Header auf Domäne B (Access-Control-Allow-Origin: *)Javascript CORS fetch response.status = 0
eingerichtetwenn ich nun bestätigen die Antwort-Status (Response.Status) i immer Status erhalten 0. Allerdings, wenn ich in der Chrom-Debugger prüfen kann ich das Bild sehen, wurde mit dem Status erhielt 200
.
Mein Anwendungsfall ist zu entscheiden, ob die Ressource basierend auf dem Statuscode zwischengespeichert werden soll oder nicht. Da Domäne B nur statische Ressourcen enthält und der Cache permanent sein soll, ist es besser, (noch) nicht zu cachen, wenn der Statuscode nicht korrekt ist.
Weiß jemand, warum ich dieses Verhalten bekomme?
Edit:
- Beide Domänen sind https
Dies ist der Code-Schnipsel:
fetch(e.request).then(function(response){ console.log(e.request.url+' - '+response.status); }
'Wenn ich jedoch den Chrom-Debugger einchecke, kann ich sehen, dass das Bild mit dem Status 200 empfangen wurde. - Kannst du auch den CORS Response Header sehen? Status 0 bedeutet in der Regel ein CORS-Problem –
Kors Response-Header war in der Tat verfügbar, danke – jrnv