Heim > Backend-Entwicklung > Golang > Warum wird bei meiner Firefox OS-App die Fehlermeldung „Cross-Origin Request Blocked' angezeigt, auch wenn CORS aktiviert ist?

Warum wird bei meiner Firefox OS-App die Fehlermeldung „Cross-Origin Request Blocked' angezeigt, auch wenn CORS aktiviert ist?

Mary-Kate Olsen
Freigeben: 2024-12-17 00:13:25
Original
946 Leute haben es durchsucht

Why Does My Firefox OS App Get a

Cross-Origin-Anfrage aufgrund von XMLHttpRequest-Einschränkung blockiert

Frage:

Der Versuch, über eine Firefox OS-App auf einen RESTful POST-Dienst zuzugreifen, führt zu einem Fehler „Cross-Origin Request Blocked“, obwohl der Back-End-Server dies festgelegt hat „Access-Control-Allow-Origin: *“ in seinen HTTP-Antwortheadern.

Lösung:

Das Problem liegt im JavaScript-Code, der die XMLHttpRequest-Anfrage erstellt:

var request = new XMLHttpRequest();
Nach dem Login kopieren

Um standortübergreifende POST-Anfragen in einer Firefox OS-App zu stellen, muss das XMLHttpRequest-Objekt im privilegierten Modus mit erstellt werden mozSystem:

var request = new XMLHttpRequest({mozSystem: true});
Nach dem Login kopieren

Implementierungsdetails:

  1. mozSystem: Das Setzen von mozSystem auf „true“ ermöglicht standortübergreifende Verbindungen, ohne dass eine serverseitige CORS-Konfiguration erforderlich ist. Es erfordert jedoch die Einstellung mozAnon: true, wodurch das Senden von Cookies oder anderen Benutzeranmeldeinformationen verhindert wird. Diese Funktion ist nur für privilegierte (überprüfte) Apps und nicht für beliebige Webseiten verfügbar.
  2. Manifest-Update: Um Ihrer App die erforderliche Berechtigung zu erteilen, fügen Sie die folgende Zeile in die „Berechtigungen“ Ihres Manifests ein. Abschnitt:
"permissions": {
       "systemXHR" : {},
}
Nach dem Login kopieren

Durch die Implementierung dieser Änderungen kann Ihre Firefox OS-App herkunftsübergreifende POST-Anfragen an Ihr Go stellen Service.

Das obige ist der detaillierte Inhalt vonWarum wird bei meiner Firefox OS-App die Fehlermeldung „Cross-Origin Request Blocked' angezeigt, auch wenn CORS aktiviert ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage