Das Projekt ist die Trennung von Front- und Backend, Frontend und Backend befinden sich nicht am selben Port, und es gibt ein domänenübergreifendes Problem, wenn das Frontend die Backend-Schnittstelle aufruft.
Wenn das Gateway eine domänenübergreifende Übertragung erlaubt, wird folgender Fehler gemeldet:
Der Zugriff auf XMLHttpRequest unter 'http://127.0.0.1:9999/gateway/auth/account/requestToken' vom Ursprung 'http://localhost:60356' wurde durch die CORS-Richtlinie blockiert: Antwort auf Preflight Anfrage besteht die Zugriffskontrollprüfung nicht: Auf der angeforderten Ressource ist kein 'Access-Control-Allow-Origin'-Header vorhanden.
jquery.min.js:2 POST http://127.0.0.1:9999/gateway/auth/account/requestToken net::ERR_FAILED Zum Spring Cloud Gateway CORS-Konfigurationsdokument-Tutorial:Der Hyperlink-Login ist sichtbar.
Ändern Sie die application.yml Konfigurationsdatei wie folgt:
Sobald die Einrichtung abgeschlossen ist, führe das Projekt erneut aus, daDie Microservices selbst sind zudem so eingerichtet, dass sie domänenübergreifende Aktivitäten ermöglichen, erscheinen doppelte Inhalte im POST-Antwort-Header mit folgendem Fehler:
Der Zugriff auf XMLHttpRequest unter 'http://127.0.0.1:9999/gateway/auth/account/requestToken' vom Ursprung 'http://localhost:60356' wurde durch die CORS-Richtlinie blockiert: Die ' Der Header "Access-Control-Allow-Origin" enthält mehrere Werte "http://localhost:60356, http://localhost:60356", aber nur einer ist erlaubt.
Lösung: Erstellen Sie einen neuen CorsResponseHeaderFilter-Filter, um einige der gleichen Antwortheader zu entfernen, der Code ist wie folgt:
Erstellen Sie eine neue CorsConfiguration-Datei und registrieren Sie die Bohnen mit folgendem Code:
Lösen Sie das Problem erfolgreich, wie auf dem untenstehenden Bild gezeigt:
(Ende)
|