


Detailliertes Verständnis des XHR-Objekts im ersten Teil der Ajax-Reihe
Ajax ist die Abkürzung für asynchrones Javascript und XML. Diese Technologie kann zusätzliche Daten vom Server anfordern, was zu einer besseren Benutzererfahrung führt Freunde, werfen wir einen Blick auf das XHR-Objekt, den ersten Artikel in der Ajax-Reihe
Die vorherigen Wörter
Ajax ist die Abkürzung Die chinesische Übersetzung besteht aus asynchronem Javascript und XML. Diese Technologie kann zusätzliche Daten vom Server anfordern, ohne die Seite zu entladen, was zu einer besseren Benutzererfahrung führt. Obwohl XML im Namen enthalten ist, hat die Ajax-Kommunikation nichts mit dem Datenformat zu tun. Im Folgenden wird der Inhalt von Ajax im Detail vorgestellt
Erstellung
Der Kern der Ajax-Technologie ist das XMLHttpRequest-Objekt (siehe). als XHR), das aus einer Funktion besteht, die zuerst von Microsoft eingeführt und später von anderen Browseranbietern implementiert wurde. XHR bietet eine flüssige Schnittstelle zum Senden von Anforderungen an den Server und zum Parsen der Serverantwort. Es kann mehr Informationen vom Server asynchron abrufen, was bedeutet, dass der Benutzer nach dem Klicken neue Daten abrufen kann, ohne die Seite zu aktualisieren
IE5 Es war der erste Browser, der XHR-Objekte einführte. In IE5 wird das XHR-Objekt über ein ActiveX-Objekt in der MSXML-Bibliothek implementiert, während IE7+ und andere Standardbrowser native XHR-Objekte unterstützen
Das Erstellen eines XHR-Objekts wird auch als Instanziieren eines XHR-Objekts bezeichnet, da XMLHTTPRequest() dies ist ein Konstrukteur. Im Folgenden finden Sie eine kompatible Methode zum Schreiben eines XHR-Objekts
var xhr; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject('Microsoft.XMLHTTP'); }
Anfrage senden
open()
Bei Verwendung eines XHR-Objekts ist die erste aufzurufende Methode open(), die 3 Parameter akzeptiert: den Typ der Anfrage gesendet werden soll. („get“, „post“ usw.), die angeforderte URL und ein boolescher Wert, der angibt, ob die Anfrage asynchron gesendet werden soll
xhr.open("get","example.php", false);
[Hinweis] Die URL bezieht sich auf die aktuelle Seite, auf der der Code ausgeführt wird, und Anfragen können nur an URLs in derselben Domäne gesendet werden, die denselben Port und dasselbe Protokoll verwenden. Wenn sich die URL von der Seite unterscheidet, die die Anfrage initiiert hat, tritt ein Sicherheitsfehler auf
send()
Die send()-Methode empfängt einen Parameter, der als Request-Body-Daten gesendet werden sollen. Nach dem Aufruf der send()-Methode wird die Anfrage zum Empfang an den Server
xhr.open("get", "example.txt", false); xhr.send(null);
gesendet die Antwort
Nach Erhalt der Antwort füllen die Antwortdaten automatisch die Attribute des XHR-Objekts aus, hauptsächlich einschließlich der folgenden 4 Attribute
responseText: der zurückgegebene Text als Antworttext
responseXML: Wenn der Inhaltstyp der Antwort „text/xml“ oder „application/xml“ ist, speichert dieses Attribut das XML-DOM-Dokument der Antwortdaten
status: HTTP-Status der Antwort
statusText: Beschreibung des HTTP-Status
Nach Erhalt der Antwort besteht der erste Schritt darin, das Statusattribut zu überprüfen, um zu bestätigen, dass die Antwort erfolgreich zurückgegeben wurde. Im Allgemeinen kann der HTTP-Statuscode 200 als Erfolgszeichen verwendet werden. Zu diesem Zeitpunkt ist der Inhalt des Attributs „responseText“ fertig und auf „responsXML“ kann auch zugegriffen werden, wenn der Inhaltstyp korrekt ist. Darüber hinaus bedeutet der Statuscode 304, dass die angeforderte Ressource nicht geändert wurde und die zwischengespeicherte Version im Browser direkt verwendet werden kann. Dies bedeutet natürlich auch, dass die Antwort gültig ist
Unabhängig davon Inhaltstyp wird der Inhalt des Antworttexts im Attribut „responseText“ gespeichert und für Nicht-XML-Daten ist der Wert des Attributs „responseXML“ null
if((xhr.status >=200 && xhr.status < 300) || xhr.status == 304){ alert(xhr.responseText); }else{ alert('request was unsuccessful:' + xhr.status); }
Asynchron
Wenn Sie eine asynchrone Antwort erhalten müssen, müssen Sie das readyState-Attribut des XHR-Objekts erkennen. Dies stellt die aktuell aktive Phase des Anfrage-/Antwortprozesses dar. Mögliche Werte für dieses Attribut sind wie folgt:
0 (UNSENT): Nicht initialisiert. Die Methode open() wurde noch nicht aufgerufen
1 (GEÖFFNET): Start. Die open()-Methode wurde aufgerufen, aber die send()-Methode wurde noch nicht aufgerufen
2 (HEADERS_RECEIVED): Senden. Die send()-Methode wurde aufgerufen und die Header-Informationen
3 (LOADING): empfangen. Teilweise Informationen zum Antwortkörper wurden empfangen
4 (FERTIG): Abgeschlossen. Alle Antwortdaten wurden empfangen und können auf dem Client verwendet werden
Immer wenn sich der Wert des readyState-Attributs von einem Wert zu einem anderen ändert, wird ein readystatechange-Ereignis ausgelöst. Mit diesem Ereignis können Sie den Wert von readyState nach jeder Zustandsänderung ermitteln. Normalerweise interessiert uns die Phase, in der der readyState-Wert 4 ist, da zu diesem Zeitpunkt alle Daten bereit sind
[Hinweis] Der onreadystatechange-Ereignishandler muss vor dem Aufruf von open() angegeben werden, um die browserübergreifende Kompatibilität sicherzustellen . Ansonsten ist die Instanz
xhr.onreadystatechange = function(){ if(xhr.readyState === 4){ if(xhr.status == 200){ alert(xhr.responseText); } } }
Das Folgende ist ein kleines Beispiel um die Anwendung von xhr-Objekten in Ajax zu demonstrieren
<button id="btn">获取信息</button> <p id="result"></p> <script> btn.onclick = function(){ //创建xhr对象 var xhr; if(window.XMLHttpRequest){ xhr = new XMLHttpRequest(); }else{ xhr = new ActiveXObject('Microsoft.XMLHTTP'); } //异步接受响应 xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ if(xhr.status == 200){ //实际操作 result.innerHTML += xhr.responseText; } } } //发送请求 xhr.open('get','message.xml',true); xhr.send(); } </script>
//message.xml
<p>hello world</p>
Durch die Demonstration von Beispielen haben wir festgestellt, dass der Inhalt des Ajax-Frontends selbst nicht schwierig ist. Da Ajax jedoch einige Back-End- und Netzwerkkenntnisse erfordert, ist es nicht einfach zu erlernen. Zukünftige Blog-Beiträge werden nach und nach die wichtigsten Inhalte von Ajax ausführlich vorstellen
Der obige Artikel ist der erste Artikel der vom Herausgeber zum XHR-Objekt vorgestellten ausführlichen Einführung in die Ajax-Reihe. Ich hoffe, dass er hilfreich sein wird alle!
Verwandte Empfehlungen:
Detaillierte Erläuterung der einfachen Implementierung des AJAX-Paging-Effekts
Ajax-Sendeformular und JSON-Methode empfangen
Ein Beispiel für die Implementierung von Ajax mit einem einfachen prozentualen Fortschrittsbalken
Das obige ist der detaillierte Inhalt vonDetailliertes Verständnis des XHR-Objekts im ersten Teil der Ajax-Reihe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Titel: Methoden und Codebeispiele zur Behebung von 403-Fehlern in jQuery-AJAX-Anfragen. Der 403-Fehler bezieht sich auf eine Anfrage, dass der Server den Zugriff auf eine Ressource verbietet. Dieser Fehler tritt normalerweise auf, weil der Anfrage die Berechtigungen fehlen oder sie vom Server abgelehnt wird. Wenn Sie jQueryAJAX-Anfragen stellen, stoßen Sie manchmal auf diese Situation. In diesem Artikel wird erläutert, wie dieses Problem gelöst werden kann, und es werden Codebeispiele bereitgestellt. Lösung: Berechtigungen prüfen: Stellen Sie zunächst sicher, dass die angeforderte URL-Adresse korrekt ist und stellen Sie sicher, dass Sie über ausreichende Berechtigungen für den Zugriff auf die Ressource verfügen.

Die offizielle Veröffentlichung der Xiaomi Mi 15-Serie wird im Oktober erwartet, und die vollständigen Codenamen der Serie wurden in der MiCode-Codebasis ausländischer Medien veröffentlicht. Unter ihnen trägt das Flaggschiff Xiaomi Mi 15 Ultra den Codenamen „Xuanyuan“ (was „Xuanyuan“ bedeutet). Dieser Name stammt vom Gelben Kaiser in der chinesischen Mythologie, der Adel symbolisiert. Xiaomi 15 trägt den Codenamen „Dada“, während Xiaomi 15Pro den Namen „Haotian“ (was „Haotian“ bedeutet) trägt. Der interne Codename des Xiaomi Mi 15S Pro lautet „dijun“, was auf Kaiser Jun anspielt, den Schöpfergott von „The Classic of Mountains and Seas“. Abdeckungen der Xiaomi 15Ultra-Serie

jQuery ist eine beliebte JavaScript-Bibliothek zur Vereinfachung der clientseitigen Entwicklung. AJAX ist eine Technologie, die asynchrone Anfragen sendet und mit dem Server interagiert, ohne die gesamte Webseite neu zu laden. Wenn Sie jedoch jQuery zum Senden von AJAX-Anfragen verwenden, treten manchmal 403-Fehler auf. Bei 403-Fehlern handelt es sich in der Regel um vom Server verweigerte Zugriffsfehler, möglicherweise aufgrund von Sicherheitsrichtlinien oder Berechtigungsproblemen. In diesem Artikel besprechen wir, wie Sie bei einer jQueryAJAX-Anfrage den Fehler 403 beheben können

Seitdem die Huawei Mate60-Serie letztes Jahr in den Handel kam, nutze ich persönlich das Mate60Pro als mein Haupttelefon. In fast einem Jahr wurde das Huawei Mate60Pro mehreren OTA-Upgrades unterzogen und das Gesamterlebnis wurde erheblich verbessert, sodass die Menschen das Gefühl haben, immer neu zu sein. So hat beispielsweise die Huawei Mate60-Serie kürzlich noch einmal ein deutliches Upgrade der Bildgebungsfunktionen erhalten. Erstens die neue KI-Eliminierungsfunktion, die Passanten und Schmutz auf intelligente Weise eliminieren und leere Bereiche automatisch ausfüllen kann. Zweitens wurden die Farbgenauigkeit und die Teleschärfe der Hauptkamera erheblich verbessert. Angesichts der Schulanfangssaison hat die Huawei Mate60-Serie auch eine Herbstaktion gestartet: Beim Kauf des Telefons erhalten Sie einen Rabatt von bis zu 800 Yuan, der Startpreis liegt bei nur 4.999 Yuan. Häufig verwendete und oft neue Produkte mit großem Wert

Wie kann das Problem des jQueryAJAX-Fehlers 403 gelöst werden? Bei der Entwicklung von Webanwendungen wird jQuery häufig zum Senden asynchroner Anfragen verwendet. Allerdings kann bei der Verwendung von jQueryAJAX manchmal der Fehlercode 403 auftreten, der darauf hinweist, dass der Zugriff vom Server verboten ist. Dies wird normalerweise durch serverseitige Sicherheitseinstellungen verursacht, es gibt jedoch Möglichkeiten, das Problem zu beheben. In diesem Artikel wird erläutert, wie Sie das Problem des jQueryAJAX-Fehlers 403 lösen können, und es werden spezifische Codebeispiele bereitgestellt. 1. machen

Erstellen Sie eine Engine für Autovervollständigungsvorschläge mit PHP und Ajax: Serverseitiges Skript: Verarbeitet Ajax-Anfragen und gibt Vorschläge zurück (autocomplete.php). Client-Skript: Ajax-Anfrage senden und Vorschläge anzeigen (autocomplete.js). Praktischer Fall: Fügen Sie ein Skript in die HTML-Seite ein und geben Sie die Kennung des Sucheingabeelements an.

Die Verwendung von Ajax zum Abrufen von Variablen aus PHP-Methoden ist ein häufiges Szenario in der Webentwicklung. Durch Ajax kann die Seite dynamisch abgerufen werden, ohne dass die Daten aktualisiert werden müssen. In diesem Artikel stellen wir vor, wie man Ajax verwendet, um Variablen aus PHP-Methoden abzurufen, und stellen spezifische Codebeispiele bereit. Zuerst müssen wir eine PHP-Datei schreiben, um die Ajax-Anfrage zu verarbeiten und die erforderlichen Variablen zurückzugeben. Hier ist ein Beispielcode für eine einfache PHP-Datei getData.php:

Ajax (Asynchronous JavaScript and XML) ermöglicht das Hinzufügen dynamischer Inhalte, ohne die Seite neu laden zu müssen. Mit PHP und Ajax können Sie eine Produktliste dynamisch laden: HTML erstellt eine Seite mit einem Containerelement und die Ajax-Anfrage fügt die Daten nach dem Laden zum Element hinzu. JavaScript verwendet Ajax, um über XMLHttpRequest eine Anfrage an den Server zu senden, um Produktdaten im JSON-Format vom Server abzurufen. PHP nutzt MySQL, um Produktdaten aus der Datenbank abzufragen und in das JSON-Format zu kodieren. JavaScript analysiert die JSON-Daten und zeigt sie im Seitencontainer an. Durch Klicken auf die Schaltfläche wird eine Ajax-Anfrage zum Laden der Produktliste ausgelöst.
