Was ist CORS (Cross-Origin Resource Sharing)? Wie löst man CORS-Probleme im Frontend?


⭐ Kolumneneinführung

Front-End-Einstiegsreise: Entdecken Sie die wunderbare Welt der Webentwicklung Willkommen auf der Front-End-Einstiegsreise! Bei Interesse können Sie diese Kolumne abonnieren! Diese Kolumne ist maßgeschneidert für diejenigen, die sich für Webentwicklung interessieren und gerade erst in den Frontend-Bereich eingestiegen sind. Egal, ob Sie ein absoluter Anfänger oder ein Entwickler mit Grundkenntnissen sind, hier finden Sie eine systematische und benutzerfreundliche Lernplattform. In dieser Kolumne werden wir es täglich in Form von Fragen und Antworten aktualisieren und Ihnen ausgewählte Frontend-Wissenspunkte und Antworten auf häufig gestellte Fragen präsentieren. Wir hoffen, durch das Q&A-Format direkter auf die Fragen der Leser zur Front-End-Technologie antworten zu können und allen dabei zu helfen, nach und nach eine solide Grundlage zu schaffen. Ob HTML, CSS, JavaScript oder verschiedene gängige Frameworks und Tools, wir erklären Konzepte einfach und leicht verständlich und stellen praktische Beispiele und Übungen zur Verfügung, um das Gelernte zu festigen. Gleichzeitig geben wir auch einige praktische Tipps und Best Practices weiter, die Ihnen helfen, verschiedene Technologien in der Front-End-Entwicklung besser zu verstehen und anzuwenden.

Fügen Sie hier eine Bildbeschreibung ein

Darüber hinaus werden wir regelmäßig einige praktische Projekt-Tutorials veröffentlichen, damit Sie das erlernte Wissen in der tatsächlichen Entwicklung anwenden können. Durch die Praxis tatsächlicher Projekte werden Sie in der Lage sein, den Arbeitsablauf und die Methodik der Front-End-Entwicklung besser zu verstehen und Ihre eigene Fähigkeit zu entwickeln, Probleme zu lösen und unabhängig zu entwickeln. Wir glauben, dass wir die Front-End-Entwicklungstechnologie nur durch kontinuierliche Anhäufung und Übung wirklich beherrschen können. Machen Sie sich also bereit für die Herausforderung und begeben Sie sich mutig auf diese Front-End-Einstiegsreise! Egal, ob Sie sich beruflich verändern, sich weiterbilden oder persönliche Interessen verfolgen möchten, wir sind bestrebt, Ihnen die besten Lernressourcen und Unterstützung zu bieten. Lassen Sie uns gemeinsam die wunderbare Welt der Webentwicklung erkunden! Nehmen Sie an der Front-End-Einstiegsreise teil und werden Sie ein herausragender Front-End-Entwickler! Beginnen wir mit der Front-End-Reise . Das Bild unten stellt weitere Spalten vor, die der Blogger zusätzlich zu dieser Spalte ausgibt; (Überspringen Sie das Bild unten und beginnen wir mit dem heutigen Text!!!)

Fügen Sie hier eine Bildbeschreibung ein


⭐ CORS (Cross-Origin Resource Sharing)

CORS (Cross-Origin Resource Sharing) ist ein Sicherheitsmechanismus, mit dem gesteuert wird, ob eine Webseite im Browser auf Ressourcen auf Servern unterschiedlicher Domänen (Herkunft) zugreifen darf. Same-Origin-Richtlinie ist eine Browser-Sicherheitsfunktion, die einschränkt, wie Webseiten, die aus einer Quelle geladen werden, mit Ressourcen aus verschiedenen Quellen interagieren. Mit CORS kann ein Server angeben, welche Ursprünge auf seine Ressourcen zugreifen können, um die Einschränkungen der Same Origin Policy zu überwinden.


⭐ Möglichkeiten zur Lösung von CORS-Problemen im Frontend

  1. Serverkonfiguration:

    • Verwendung von Antwortheadern: Der Server kann dem Antwortheader bestimmte CORS-bezogene Felder hinzufügen, um zulässige Ursprünge zu deklarieren, z. B. Access-Control-Allow-Origin.
    • Alle Quellen zulassen: Wenn Ihre App den Zugriff von jeder Quelle zulässt, können Sie Access-Control-Allow-Origindies auf Platzhalter setzen *.
    • Anforderungsmethoden einschränken: Verwenden Sie Access-Control-Allow-MethodsFelder, um zulässige HTTP-Methoden wie GET, POST, PUT usw. anzugeben.
    • Übertragen von Anmeldeinformationen: Wenn Sie Anmeldeinformationen (z. B. Cookies, HTTP-Authentifizierung usw.) über Domänenanfragen hinweg übertragen müssen, können Sie Access-Control-Allow-CredentialsFelder verwenden.
    • Benutzerdefinierte Header zulassen: Access-Control-Allow-HeadersErlauben Sie Clients, bestimmte HTTP-Header über Felder zu senden.
  2. JSONP (JSON mit Polsterung):

    • JSONP ist eine Technik zur Umgehung von CORS-Einschränkungen. Es implementiert domänenübergreifende Datenanfragen, indem es dynamisch Tags auf der Seite erstellt <script>und ein JavaScript-Skript lädt, das Callback-Funktionsaufrufe enthält.
    • JSONP eignet sich für Situationen, in denen Sie nur Daten lesen müssen und unterstützt keine anderen HTTP-Methoden wie POST-Anfragen.
  3. Proxy Server:

    • Es ist möglich, auf Ihrem eigenen Server einen Proxy zu erstellen, um Anfragen weiterzuleiten. Die Front-End-Anwendung fordert den Proxyserver an, der wiederum den Zielserver anfordert und die Antwort an die Front-End-Anwendung zurückgibt.
    • Diese Methode funktioniert für alle Arten von Anfragen, erfordert jedoch zusätzliche Serverressourcen.
  4. Verwenden Sie CORS-Middleware:

    • Für einige Backend-Frameworks wie Express.js, Django usw. können Sie CORS-Middleware verwenden, um CORS-Regeln einfach zu konfigurieren.
    • Mit diesen Middlewares können Sie CORS-bezogene Optionen in Ihrer Backend-Anwendung festlegen, um domänenübergreifende Anfragen flexibler zu bearbeiten.
  5. Anforderungsheader ändern:

    • In einigen Fällen kann CORS durch Ändern der Anforderungsheader implementiert werden. Beispielsweise durch Hinzufügen eines Headers zur Anfrage Origin, der dem Server die Quelle der Anfrage angibt. Auf diese Weise kann der Server anhand des Ursprungs entscheiden, ob er die Anfrage zulässt.

Es ist zu beachten, dass CORS-Probleme hauptsächlich die Sicherheit domänenübergreifender Anfragen betreffen. Daher sollten Sie bei der Lösung des Problems sicherstellen, dass keine Sicherheitslücken entstehen. Die richtige Konfiguration und serverseitige Sicherheit sind der Schlüssel.


⭐Schreiben Sie am Ende

Diese Kolumne ist für eine breite Leserschaft geeignet und eignet sich für Front-End-Anfänger, für diejenigen, die Front-End noch nicht gelernt haben und sich für Front-End interessieren, oder für Back-End-Studenten, die sich besser zeigen und erweitern möchten Einige Front-End-Wissenspunkte während des Interviewprozesses. Wenn Sie also über die Grundlagen des Front-Ends verfügen und dieser Kolumne folgen, kann es Ihnen auch in hohem Maße dabei helfen, nach Auslassungen zu suchen und die Lücken zu schließen, da der Blogger selbst dies tut Wenn der Artikel fehlerhaft ist, können Sie mich über die linke Seite der Homepage kontaktieren. Lassen Sie uns gemeinsam Fortschritte machen, und gleichzeitig empfehle ich jedem mehrere Spalten. Interessierte Partner können abonnieren: Zusätzlich zu den folgenden Spalten können Sie auf meiner Homepage auch andere Spalten sehen.

Frontend-Spiele (kostenlos) Diese Kolumne entführt Sie in eine Welt voller Kreativität und Spaß. Mithilfe der Grundkenntnisse in HTML, CSS und JavaScript werden wir gemeinsam verschiedene interessante Seitenspiele erstellen. Ganz gleich, ob Sie Anfänger sind oder über Erfahrung in der Frontend-Entwicklung verfügen, diese Kolumne ist genau das Richtige für Sie. Wir beginnen mit den Grundlagen und führen Sie durch die Fähigkeiten, die Sie zum Erstellen eines Seitenspiels benötigen. Anhand praktischer Fälle und Übungen lernen Sie, wie Sie mit HTML eine Seitenstruktur erstellen, mit CSS die Spieloberfläche verschönern und mit JavaScript dem Spiel interaktive und dynamische Effekte hinzufügen. In dieser Kolumne behandeln wir verschiedene Arten von Minispielen, darunter Labyrinthspiele, Ziegelbrecher, Schlange, Minensuchboot, Taschenrechner, Flugzeugschlachten, Tic-Tac-Toe, Rätsel, Labyrinthe und mehr. Jedes Projekt führt Sie in prägnanten und klaren Schritten durch den Bauprozess, mit ausführlichen Erklärungen und Codebeispielen. Gleichzeitig geben wir Ihnen auch einige Optimierungstipps und Best Practices, die Ihnen dabei helfen, die Seitenleistung und das Benutzererlebnis zu verbessern. Egal, ob Sie nach einem interessanten Projekt suchen, um Ihre Front-End-Fähigkeiten zu trainieren, oder sich für die Entwicklung von Seitenspielen interessieren, die Rubrik „Front-End-Spiele“ ist die beste Wahl. Klicken Sie hier, um die Spalte „Frontend-Spiele“ zu abonnieren

Fügen Sie hier eine Bildbeschreibung ein

Vue3 Transparent Tutorial [Von Null auf Eins] (kostenpflichtig) Willkommen beim Vue3 Transparent Tutorial! Ziel dieser Kolumne ist es, jedem umfassendes technisches Wissen rund um Vue3 zu vermitteln. Wenn Sie über Vue2-Erfahrung verfügen, kann Ihnen diese Kolumne dabei helfen, die Kernkonzepte und die Verwendung von Vue3 zu beherrschen. Wir fangen bei Null an und begleiten Sie Schritt für Schritt bei der Erstellung einer vollständigen Vue-Anwendung. Durch praktische Fälle und Übungen lernen Sie, wie Sie die Vorlagensyntax, Komponentenentwicklung, Zustandsverwaltung, Routing und andere Funktionen von Vue3 verwenden. Wir werden auch einige erweiterte Funktionen wie Composition API und Teleport vorstellen, um Ihnen zu helfen, die neuen Funktionen von Vue3 besser zu verstehen und anzuwenden. In dieser Kolumne führen wir Sie in prägnanten und klaren Schritten durch jedes Projekt, mit detaillierten Erklärungen und Beispielcode. Gleichzeitig werden wir einige häufig auftretende Probleme und Lösungen bei der Vue3-Entwicklung vorstellen, um Ihnen bei der Überwindung von Schwierigkeiten und der Verbesserung der Entwicklungseffizienz zu helfen. Egal, ob Sie Vue3 eingehend erlernen möchten oder eine umfassende Anleitung zum Erstellen eines Front-End-Projekts benötigen, die ausführliche Vue3-Tutorial-Kolumne wird zu einer unverzichtbaren Ressource für Sie. Klicken Sie hier, um die Spalte „Vue3 Transparent Tutorial [From Zero to One]“ zu abonnieren

Fügen Sie hier eine Bildbeschreibung ein

Der TypeScript-Einstiegsleitfaden (kostenlos) ist eine Kolumne, die Ihnen den schnellen Einstieg und die Beherrschung der TypeScript-bezogenen Technologien erleichtern soll. Durch prägnante und klare Sprache und reichhaltigen Beispielcode erklären wir die Grundkonzepte, Syntax und Funktionen von TypeScript ausführlich. Egal, ob Sie Anfänger oder erfahrener Entwickler sind, hier finden Sie den Lernpfad, der zu Ihnen passt. Von Kernfunktionen wie Typanmerkungen, Schnittstellen und Klassen bis hin zur modularen Entwicklung, Toolkonfiguration und Integration mit gängigen Frontend-Frameworks werden wir alle Aspekte umfassend abdecken. Durch die Lektüre dieser Kolumne können Sie die Zuverlässigkeit und Wartbarkeit von JavaScript-Code verbessern und für eine bessere Codequalität und Entwicklungseffizienz für Ihre Projekte sorgen. Begeben wir uns gemeinsam auf diese spannende und herausfordernde TypeScript-Reise! Klicken Sie hier, um die Spalte „TypeScript-Erste Schritte“ zu abonnieren

Fügen Sie hier eine Bildbeschreibung ein

Guess you like

Origin blog.csdn.net/JHXL_/article/details/132962633