Vorwort Wenn ein 403-Cross-Origin-Fehler auftritt 1. Lösung Sie müssen nur die folgenden Parameter in der Nginx-Konfigurationsdatei konfigurieren: Standort / { add_header Zugriffskontrolle-Origin zulassen *; add_header Zugriffssteuerungs-Zulassungsmethoden 'GET, POST, OPTIONS'; add_header Zugriffskontrolle-Header zulassen 'DNT, X-Mx-ReqToken, Keep-Alive, User-Agent, X-Requested-With, If-Modified-Since, Cache-Control, Inhaltstyp, Autorisierung'; if ($request_method = 'OPTIONEN') { Rückgabe 204; } } Der obige Konfigurationscode kann das Problem lösen. Wenn Sie ihn nicht eingehend studieren möchten, lesen Sie einfach hier =-= II. Erläuterung 1. Zugriffskontrolle-Ursprung zulassen Standardmäßig ist es Servern nicht gestattet, Domänen zu überschreiten. Nachdem Sie „Access-Control-Allow-Origin*“ für den Nginx-Server konfiguriert haben, bedeutet dies, dass der Server alle Anforderungsquellen (Origin) akzeptieren kann, d. h. alle domänenübergreifenden Anforderungen akzeptieren kann. 2. Access-Control-Allow-Headers soll folgende Fehler verhindern:
Dieser Fehler zeigt an, dass der Wert des aktuellen Anforderungsinhaltstyps nicht unterstützt wird. Tatsächlich wurde es durch die von uns initiierte Anfrage vom Typ „application/json“ verursacht. Hier ist ein Konzept beteiligt: Preflight-Anforderung. Bitte lesen Sie die Einführung zu „Preflight-Anforderung“ weiter unten. 3. Access-Control-Allow-Methods soll folgende Fehler verhindern:
4. Das Hinzufügen einer 204-Antwort zu OPTIONS dient zur Behandlung des Fehlers, dass Nginx beim Senden einer POST-Anforderung immer noch den Zugriff verweigert Beim Senden einer „Preflight-Anfrage“ ist die Methode OPTIONS erforderlich, daher muss der Server diese Methode zulassen. 3. Preflight-Anfrage Tatsächlich beinhaltet die obige Konfiguration einen W3C-Standard: CROS, der vollständige Name steht für Cross-Origin Resource Sharing, der zur Lösung von Cross-Origin-Anfragen vorgeschlagen wurde.
Tatsächlich ist die Anfrage, deren Content-Type-Feldtyp application/json ist, die POST-Anfrage mit bestimmten oben genannten MIME-Typen. Laut CORS ist ein Content-Type, der nicht zu den folgenden MIME-Typen gehört, eine Pre-Check-Anfrage:
Daher fügt die Anwendungs-/JSON-Anforderung vor der formellen Kommunikation eine „Pre-Check“-Anforderung hinzu. Diese „Pre-Check“-Anforderung enthält die Header-Informationen Access-Control-Request-Headers: Content-Type: OPTIONEN /api/test HTTP/1.1 Herkunft: http://foo.example Zugriffskontroll-Anforderungsmethode: POST Access-Control-Request-Header: Inhaltstyp ... einige weggelassen Wenn bei der Antwort des Servers die zurückgegebenen Header-Informationen nicht „Access-Control-Allow-Headers: Content-Type“ enthalten, bedeutet dies, dass ein nicht standardmäßiger Content-Type nicht akzeptiert wird. Der folgende Fehler tritt auf:
Referenzartikel:
Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Schreiben von Methoden, die in nativem JS verboten sein sollten
>>: MySQL-Tutorial zum Bereitstellen mehrerer Instanzen auf einer einzigen Maschine mit mysqld_multi
1. Scroll Snap ist eine unverzichtbare Fähigkeit ...
Beginnen wir mit dem Körper: Wenn Sie eine Webseit...
Inhaltsverzeichnis 1. Konventionelle Ideen zur Ze...
<br />Ursprüngliche Adresse: http://andymao....
React-Native-Installationsprozess 1.npx react-nat...
1. Hintergrund In tatsächlichen Projekten stoßen ...
Im vorherigen Artikel haben wir Folgendes vorgest...
Inhaltsverzeichnis Konzept Array-Destrukturierung...
Inhaltsverzeichnis 1. Was ist syntaktischer Zucke...
Ich habe erst vor Kurzem angefangen, mich mit Dat...
Inhaltsverzeichnis 1. Warteschlangen verstehen 2....
In diesem Artikel wird hauptsächlich die Implemen...
SQL findet alle doppelten Datensätze in einer Tab...
Die vollständigen Schritte zur Konfiguration des ...
Übergeben von Werten zwischen Miniprogrammseiten ...