


Detaillierte Erläuterung des Beispielcodes für die XMLHTTP-Objektkapselungstechnologie
Die Implementierung der Ajax-Technologie basiert hauptsächlich auf xmlhttprequest. Wenn wir sie jedoch für die asynchrone Datenübertragung aufrufen, ist xmlhttp ein kurzfristiger Prozess (er wird nach der Verarbeitung des Ereignisses zerstört). Wenn das Objekt nicht verpackt ist, Es muss in der Rekonstruktion von xmlhttprequest dort verarbeitet werden, wo es aufgerufen werden muss, und erfordert das Schreiben eines großen Codeabschnitts für jeden Aufruf, was wirklich keine gute Idee ist. Glücklicherweise bieten viele Open-Source-Ajax-Frameworks mittlerweile Lösungen für die Kapselung von xmlhttp. Hier verwenden wir den Prototyp-1.4.0.js, der mit Ajaxtags geliefert wird, als Master, um zu sehen, wie das xmlhttp-Objekt in eine wiederverwendbare Methode gekapselt wird.
In Prototype.js wird zunächst eine Variable definiert: Ajax
var Ajax = { getTransport: function() { return Try.these( function() {return new ActiveXObject('Msxml2.XMLHTTP')}, function() {return new ActiveXObject('Microsoft.XMLHTTP')}, function() {return new XMLHttpRequest()} ) || false; }, activeRequestCount: 0 }
Die Variable gibt eine xmlhttprequest zurück, wenn wir Ajax.getTransport() jedes Mal neu aufrufen Das xmlhttprequest-Objekt wird zurückgegeben.
Eine Basismethode Ajax.Base und der Prototyp der Basismethode werden in der Ajax-Variablen definiert (zunächst verfügt jede Skriptmethode standardmäßig über einen leeren Prototyp, der den Prototyp von Object erbt. Wenn wir die Wenn der Prototyp in Object geändert wird, werden alle Skriptmethoden geändert. Beachten Sie, dass die Methode oder Variable des geerbten Prototyps mit demselben Namen in Ajax.Request geändert wird .
Das Wichtigste im Ajax.Base-Prototyp ist die setOptions-Methode, die wir später verwenden werden.
setOptions: function(options) { this.options = { method: 'post', asynchronous: true, parameters: '' }
Anfrage im Prototyp wird durch die Definition des Ajax.Request-Prototyps (Ajax.Request.prototype) implementiert. Wir können Ajax.Request jedoch nicht direkt aufrufen. Der Hauptgrund ist, dass Ajax.Request keinen einheitlichen Verarbeitungsprozess bietet. Und möglicherweise müssen wir die Antwort über die Anfrage erhalten. (Stellen Sie sich vor, der Kunde hat eine Nachricht gesendet, aber nie eine Antwort erhalten. Das wäre sehr ärgerlich.) Der Prototyp kapselt auch die Antwort (Ajax.Responders) für uns, aber beide sind unabhängig voneinander. Wie integriert man sie?
stellt uns im Prototyp zwei Lösungen zur Verfügung, eine ist Ajax.Updater und die andere ist Ajax.PeriodicalUpdater. Beiden ist gemeinsam, dass 3 Parameter übergeben werden müssen:
container :
Die Position, an der die Antwortdaten übermittelt werden sollen, wird durch die ID des HTML-Tags definiert. Wenn Sie beispielsweise die zurückgegebenen Daten in einem
URL: Das Ziel, an das die
Anfrageanfrage weitergeleitet werden soll. Das Ziel sollte ein Servlet oder Jspservlet sein, da das Anforderungsobjekt nur durch die Methode do*** im Servlet automatisch abgerufen werden kann.
Optionen: Die
-Struktur sollte mit der oben von Ajax.Base definierten Optionsstruktur in setOptions() übereinstimmen. Wenn sie leer ist oder nicht geschrieben wird, der von Ajax definierte Anfangswert. Die Basis wird verwendet (keine wird bei der Übergabe von Parametern verwendet).
Der Unterschied zwischen den beiden besteht darin, dass Ajax.Updater den vollständigen Antworttext nur dann an den Container zurückgibt, wenn der Antworttext vollständig abgerufen wird und keine Ausnahme auftritt. Der Inhalt wird jedoch in den Container geschrieben Der Antworttext. Unabhängig davon, ob er vollständig abgerufen wurde, wird der Inhalt in den Container gefüllt, bis eine Ausnahme auftritt oder der Antworttext vollständig abgerufen wird. In den meisten Fällen sollte die erste Methode verwendet werden, da die erste Methode beim Auftreten einer Ausnahme die Ausnahmeinformationen im Container anzeigt, die zweite Methode jedoch möglicherweise nicht.
Nachdem xmlhttp gekapselt wurde, müssen wir nur noch die drei oben genannten Parameter festlegen. Beachten Sie, dass Sie diese beim Festlegen der Optionsparameter entsprechend der Optionsstruktur in der Basis festlegen müssen Wenn wir die Post-Methode verwenden, können wir auch das Attribut postBody in Opitons festlegen und den zu übertragenden queryString in den Text einfügen. Ein Beispiel für ein Skript, das die Post-Methode zum Übertragen verwendet, lautet wie folgt:
/*表单提交用post方法*/ function doRequest(container,paraments,url){ var options ={ method: 'post', asynchronous: true, postBody: paraments }; new Ajax.Updater(container,url,options); }
Endlich Ich muss sagen, dass es sich um ein chinesisches Codierungsproblem handelt. Der Prototyp führt eine Codierungskonvertierung für die übergebenen Parameter durch und jeder übergebene Wert wird über encodeURIComponent verarbeitet. Die Kodierung wird in utf-8 konvertiert. Wenn Sie die Anfrage im Hintergrund erhalten, sollten Sie unabhängig vom Kodierungsformat der Seite einheitlich request.setCharacterEncoding("UTF-8") verwenden, um die Kodierung für die Anfrage festzulegen. Wenn Sie die Post-Methode zum Übertragen von Daten verwenden, wird automatisch Folgendes ausgeführt:
Anfrage. setHeader('Content-type','application/x-www-form-urlencoded') Stellen Sie sicher, dass das Kodierungsformat der übertragenen Daten korrekt ist.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Beispielcodes für die XMLHTTP-Objektkapselungstechnologie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

RSS ist ein XML-basiertes Format, das zur Veröffentlichung häufig aktualisierter Inhalte verwendet wird. 1. RSSFEED organisiert Informationen über die XML -Struktur, einschließlich Titel, Link, Beschreibung usw. 2. Das Erstellen von RSSFeed erfordert das Schreiben in der XML -Struktur und addiert Metadaten wie Sprache und Veröffentlichungsdatum. 3. Die erweiterte Verwendung kann Multimedia -Dateien und klassifizierte Informationen enthalten. 4. Verwenden Sie beim Debuggen XML -Überprüfungswerkzeuge, um sicherzustellen, dass die erforderlichen Elemente existieren und korrekt codiert werden. 5. Optimierung von RSSFeed kann durch Pagen, Zwischenspeichern und Einfachen der Struktur erreicht werden. Durch das Verständnis und Anwenden dieses Wissens können Inhalte effektiv verwaltet und verteilt werden.

RSS ist ein XML-basiertes Format, das zum Veröffentlichen und Abonnieren von Inhalten verwendet wird. Die XML -Struktur einer RSS -Datei enthält ein Stammelement, ein Element und mehrere Elemente, die jeweils einen Inhaltseintrag darstellen. Lesen und analysieren Sie RSS -Dateien über XML -Parser, und Benutzer können den neuesten Inhalt abonnieren und abrufen.

XML hat die Vorteile strukturierter Daten, Skalierbarkeit, plattformübergreifender Kompatibilität und Parsingüberprüfung in RSS. 1) Strukturierte Daten sorgen für die Konsistenz und Zuverlässigkeit des Inhalts; 2) Die Skalierbarkeit ermöglicht das Hinzufügen von benutzerdefinierten Tags, um den Inhaltsanforderungen zu entsprechen. 3) Die plattformübergreifende Kompatibilität funktioniert es nahtlos auf verschiedenen Geräten. 4) Analytische und Überprüfungswerkzeuge gewährleisten die Qualität und Integrität des Futters.

Die Implementierung von RSS in XML besteht darin, Inhalte durch ein strukturiertes XML -Format zu organisieren. 1) RSS verwendet XML als Datenaustauschformat, einschließlich Elemente wie Kanalinformationen und Projektliste. 2) Beim Generieren von RSS -Dateien müssen Inhalte gemäß den Spezifikationen organisiert und für das Abonnement auf dem Server veröffentlicht werden. 3) RSS-Dateien können über einen Leser oder ein Plug-in abonniert werden, um den Inhalt automatisch zu aktualisieren.

Zu den erweiterten Funktionen von RSS gehören Inhaltsnamenspaces, Erweiterungsmodule und bedingte Abonnements. 1) Inhaltsnamenspace erweitert die RSS -Funktionalität, 2) erweiterte Module wie Dublincore oder iTunes, um Metadaten hinzuzufügen, 3) bedingte Abonnementfiltereinträge basierend auf bestimmten Bedingungen. Diese Funktionen werden implementiert, indem XML -Elemente und -attribute hinzugefügt werden, um die Effizienz des Informationen zu verbessern.

RSSFEEDSUSUSExMLTOstructureRecontentupdates.1) XmlProvidesahierarchicalStructurefordata.2) Die Auslagerungdefinedefeed -Säuberlichkeitsumschläge

RSS und XML sind Tools für die Verwaltung von Webinhalten. RSS wird verwendet, um Inhalte zu veröffentlichen und zu abonnieren, und XML wird verwendet, um Daten zu speichern und zu übertragen. Sie arbeiten mit Content Publishing, Abonnements und Update Push. Beispiele für die Nutzung sind RSS Publishing -Blog -Beiträge und XML -Speicherbuchinformationen.

RSS-Dokumente sind XML-basierte strukturierte Dateien, die zum Veröffentlichen und Abonnieren von häufig aktualisierten Inhalten verwendet werden. Zu den Hauptfunktionen gehören: 1) automatisierte Inhaltsaktualisierungen, 2) Inhaltsaggregation und 3) Verbesserung der Browsereffizienz. Durch RSSFeed können Benutzer die neuesten Informationen aus verschiedenen Quellen rechtzeitig abonnieren und abrufen.


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

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool
