Ajax löst domänenübergreifende Probleme durch Festlegen eines CORS-Antwortheaders, um eine domänenübergreifende Fallstudie zu erreichen

Ajax löst domänenübergreifende Probleme durch Festlegen eines CORS-Antwortheaders, um eine domänenübergreifende Fallstudie zu erreichen

1. Legen Sie den CORS-Antwortheader fest, um domänenübergreifende Funktionalität zu erreichen

Ressourcenfreigabe zwischen verschiedenen Ursprüngen (CORS)

1.1 Was ist CORS

CORS (Cross-Origin Resource Sharing), gemeinsame Nutzung von Ressourcen zwischen verschiedenen Ursprüngen. CORS ist die offizielle Cross-Domain-Lösung. Ihre Besonderheit besteht darin, dass keine speziellen Vorgänge auf dem Client erforderlich sind und die Verarbeitung vollständig auf dem Server erfolgt. Es unterstützt Get- und Post-Anfragen. Der Cross-Origin Resource Sharing-Standard fügt eine Reihe von HTTP-Headerfeldern hinzu, die es Servern ermöglichen, anzugeben, welche Ursprünge über Browser Zugriff auf welche Ressourcen haben.

1.2 Wie funktioniert CORS?

CORS setzt einen Antwortheader, um dem Browser mitzuteilen, dass die Anforderung domänenübergreifend sein darf. Nach Erhalt der Antwort gibt der Browser die Antwort frei.

1.3 Wofür wird CORS verwendet?

Bildbeschreibung hier einfügen

ajaxDemo.html

<!DOCTYPE html>
<html lang="de">

<Kopf>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=Gerätebreite, Anfangsmaßstab=1.0">
    <Titel>CORS</Titel>
    <Stil>
        #Ergebnis {
            Breite: 200px;
            Höhe: 100px;
            Rand: durchgezogen 1px #90b;
        }
    </Stil>
</Kopf>

<Text>
    <button>Anfrage senden</button>
    <div id="Ergebnis"></div>
    <Skript>
        const btn = document.querySelector('Schaltfläche');

        btn.onclick = Funktion () {
            //1. Objekt erstellen const x = new XMLHttpRequest();
            //2. Initialisierungseinstellungen x.open("GET", "http://127.0.0.1:8080/cors-server");
            //3. Senden x.send();
            //4. Ereignis x.onreadystatechange = function () { binden
                wenn (x.readyState === 4) {
                    wenn (x.status >= 200 und x.status < 300) {
                        document.getElementById('Ergebnis').innerText = x.response;
                    }
                }
            }
        }
    </Skript>
</body>

</html>

Bildbeschreibung hier einfügen

server.js

//1. Express importieren
const express = erfordern('express');

//2. Anwendungsobjekt erstellen const app = express();
 
//3. Routing-Regeln erstellen // request ist die Kapselung der Anfragenachricht // response ist die Kapselung der Antwortnachricht app.all('/cors-server', (request, response)=>{
    //Setze den Antwortheader response.setHeader("Access-Control-Allow-Origin", "*"); // Erlaube alle domänenübergreifenden Anfragen* 
    // response.setHeader("Access-Control-Allow-Origin", "http://127.0.0.1:5500"); // Angegebene Anfragen domänenübergreifend zulassen // response.setHeader("Access-Control-Allow-Headers", '*'); // Benutzerdefinierte Anfrage-Header-Tags zulassen // response.setHeader("Access-Control-Allow-Method", '*'); // Alle Anfragen domänenübergreifend zulassen *
    // response.setHeader("Access-Control-Allow-Method", 'get'); // Erlaube domänenübergreifende Get-Anfragen response.send('hello CORS');
});


//4. Abhörport zum Starten des Dienstes app.listen(8080, () => {
    console.log("Der Dienst wurde gestartet, Port 8080 lauscht...");
});

Starten Sie den Dienst nodemon server.js

Bildbeschreibung hier einfügen

Laufergebnisse:

Bildbeschreibung hier einfügen

Dies ist das Ende dieses Artikels über die domänenübergreifende Ajax-Lösung und das Festlegen des CORS-Antwortheaders zum Erreichen domänenübergreifender Falldetails. Weitere relevante Inhalte zur domänenübergreifenden Ajax-Lösung finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Dreistufige Verknüpfung des Provinz- und Gemeinde-Ajax-Codes
  • JSON, AJAX, Maven-Grundlagen
  • Implementierungscode für die Ajax-Anmeldeüberprüfung
  • Ajax realisiert die Verbindung zwischen Provinzen, Städten und Bezirken
  • jQuery+Ajax zum Erreichen eines einfachen Paging-Effekts
  • Vorläufige Implementierung von Ajax (unter Verwendung von vscode+node.js+express framework)
  • So verwenden Sie AJAX zum Abrufen von Django-Backend-Daten
  • Detaillierte Erklärung des Parsererror-Fehlerfalls in der JavaScript-Lösung in Ajax

<<:  Implementierung der Clusterkonstruktion im Docker Redis5.0-Cluster

>>:  Virtuelle Maschinen zwischen VMware Workstation und vSphere migrieren (Bild und Text)

Artikel empfehlen

So installieren Sie das Modul „lua-nginx-module“ in Nginx

ngx_lua_module ist ein Nginx-HTTP-Modul, das den ...

JavaScript-Implementierung eines Karussellbeispiels

In diesem Artikel wird der spezifische Code für J...

Einführung in Docker-Container

Docker-Übersicht Docker ist eine Open-Source-Lösu...

So verwenden Sie JS zum Implementieren des Wasserfalllayouts von Webseiten

Inhaltsverzeichnis Vorwort: Was ist ein Wasserfal...

Tomcat8 verwendet Cronolog zum Aufteilen von Catalina.Out-Protokollen

Hintergrund Wenn die von Tomcat generierte catali...

JavaScript-Tipps zur Verbesserung Ihrer Programmierkenntnisse

Inhaltsverzeichnis 1. Filtern Sie eindeutige Wert...

Methode zum dynamischen Laden von Geojson basierend auf Vue+Openlayer

Laden eines oder mehrerer Features <Vorlage>...

Informationen zum Textumbruchproblem bei IE-Labels (LI)

Ich habe lange damit gekämpft und nach einiger Suc...

Detaillierte Erläuterung der primitiven Werte und Referenzwerte in ECMAScript

Inhaltsverzeichnis Vorwort Was sind dynamische Ei...

Zusammenfassung der Grundsätze zum Schreiben von HTML-Seiten für E-Mails

Da HTML-E-Mail keine unabhängige HOST-Seite auf di...

Unterschied zwischen HTML ReadOnly und Enabled

Das Textfeld mit dem ReadOnly-Attribut wird auf de...