Movatterモバイル変換


[0]ホーム

URL:


Zum Inhalt springen
WikipediaDie freie Enzyklopädie
Suche

XMLHttpRequest

aus Wikipedia, der freien Enzyklopädie

XMLHttpRequest (kurz:XHR) ist eineProgrammierschnittstelle fürJavaScript zum Übertragen von Daten überHTTP. Entgegen dem Namen muss es sich bei diesen Daten nicht um XML handeln. XMLHttpRequest bildet einen Grundbaustein derAjax-Technik.

XMLHttpRequest ermöglicht es einem Skript einer Webseite, Daten dynamisch vomWebserver abzurufen, ohne dass dazu die HTML-Seite neu geladen werden müsste. Dies war zuvor nur durch den Einsatz unsichtbarerHTML-Frames oderIFrames oder mit dynamisch nachgeladenen Skript-Dateien möglich.[1] Da beim XMLHttpRequest-Verfahren Datenasynchron verarbeitet werden können, muss ein Skript nicht warten, bis die Anfrage beantwortet ist, sondern kann sich so lange anderen Aufgaben zuwenden.

Die Schnittstellenbeschreibung des XMLHTTPRequest-Objekts gemäß dem Standardisierungsvorschlag desW3C.

Es können HTTP-Verfahren wieAnfragemethoden,Authentifizierung undCaching verwendet werden. Wenn eine AnfrageXML-Daten liefert, kann XMLHttpRequest diese alternativ als Text oder alsDOM-Baumstruktur zurücksenden. Letzteres eignet sich beispielsweise dazu, mitWebservices zu kommunizieren.

Mit der Einführung vonWeb Workers wurde XHR durch die Fetch API abgelöst.[2][3]

Geschichte

[Bearbeiten |Quelltext bearbeiten]

Die XMLHttpRequest-Technik wurde ursprünglich vonMicrosoft entwickelt und stand imInternet Explorer ab Version 5.0 alsActiveX-Objekt zur Verfügung. VieleWebbrowser unterstützen diese API, neben demInternet Explorer[4] (ab Version 7 als XMLHttpRequest) sind dasMozilla und alle anderenGecko-Derivate (ab Version 1.0),[5]Opera (ab Version 7.6 Beta) undApple Safari (ab Version 1.2),[6]Konqueror und alle anderenKHTML-Derivate.

Wie aus den einzelnen Schnittstellenbeschreibungen der verschiedenen XMLHttpRequest-Implementierungen hervorgeht, sind diese nicht vollständig zueinander kompatibel. Aus diesem Grund wurde im Dezember 2012 eine einheitliche Definition für das XMLHttpRequest-Objekt durch dasW3C zur Standardisierung vorgeschlagen.[7]

Seit Ende 2012 wird die Spezifikation als fortlaufend weiterentwickelterLiving Standard von derWHATWG geführt.[8]

Codebeispiel(JavaScript)

[Bearbeiten |Quelltext bearbeiten]

Das folgende Beispiel ruft eine Ressource auf derselben Domain über XMLHttpRequest auf und gibt den Inhalt in einem Meldungsfenster aus. Wenn der Aufruf der Ressource fehlschlägt, wird keine Meldung ausgegeben:

varxmlHttp=null;try{xmlHttp=newXMLHttpRequest();}catch(e){// Fehlerbehandlung, wenn die Schnittstelle vom Browser nicht unterstützt wird.}if(xmlHttp){xmlHttp.open('GET','beispiel.xml',true);xmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4){alert(xmlHttp.responseText);}};xmlHttp.send(null);}

XMLHttpRequest Level 2

[Bearbeiten |Quelltext bearbeiten]

XMLHttpRequest Level 2 war ein Arbeitsentwurfs(working draft) beimW3C für eine Erweiterung der Spezifikation um u. a.domain-übergreifende Abfragen und die Unterstützung vonDatenströmen. Diese Erweiterungen sind seit 2012 in den Standard aufgenommen worden.[9][8]

Einzelnachweise

[Bearbeiten |Quelltext bearbeiten]
  1. On-Demand Javascript. In: ajaxpatterns.org. 30. Juli 2014, archiviert vom Original am 24. Juli 2015; abgerufen am 2. Dezember 2023 (englisch). 
  2. XMLHttpRequest API. In: developer.mozilla.org. Mozilla, 8. November 2023, abgerufen am 30. November 2023 (englisch). 
  3. Fetch API. In: developer.mozilla.org. Mozilla, 1. April 2023, abgerufen am 30. November 2023 (englisch). 
  4. IXMLHTTPRequest Members. In: learn.microsoft.com. Microsoft, 27. Oktober 2016, abgerufen am 2. Dezember 2023 (englisch, Schnittstellenbeschreibung des XMLHttpRequest-Objekts für den IE). 
  5. XMLHttpRequest. In: developer.mozilla.org. Mozilla, 22. November 2023, abgerufen am 2. Dezember 2023 (englisch, Schnittstellenbeschreibung des XMLHttpRequest-Objekts für Mozilla). 
  6. Dynamic HTML and XML: The XMLHttpRequest Object. In: developer.apple.com. Apple, 24. Juni 2005, archiviert vom Original am 25. September 2011; abgerufen am 2. Dezember 2023 (englisch, Schnittstellenbeschreibung des XMLHttpRequest-Objekts für Safari). 
  7. Anne van Kesteren et al.: XMLHttpRequest Level 1. In: w3.org. World Wide Web Consortium, 6. Oktober 2016, abgerufen am 2. Dezember 2023 (englisch, Schnittstellenbeschreibung des XMLHttpRequest-Objekts vorgeschlagen durch das W3C). 
  8. abXMLHttpRequest Standard. 1.1. Specification history. In: xhr.spec.whatwg.org. Web Hypertext Application Technology Working Group (WHATWG), 27. September 2023, abgerufen am 2. Dezember 2023 (englisch). 
  9. Anne van Kesteren et al.: XMLHttpRequest Level 2. In: w3.org. World Wide Web Consortium, 18. November 2014, abgerufen am 2. Dezember 2023 (englisch). 
Standards desWorld Wide Web Consortiums (W3C)
VD
Empfehlungen

ActivityPub |ARIA |Canonical XML |CDF |CSS |DOM |Geolocation API |HTML |HTML5 |InkML |ITS |JSON-LD |MathML |OWL |P3P |PLS |PNG |RDF |RDF-Schema |RIF |SCXML |SISR |SKOS |SMIL |SOAP |SRGS |SSML |SVG |SPARQL |Timed Text |Turtle |VoiceXML |WSDL |XForms |XHTML |XHTML+RDFa |XInclude |XLink |XML |XML Base |XML-Encryption |XML Events |XML Information Set |XML Namespace |XML Schema |XML Signature |XPath |XPointer |XProc |XQuery |XSL |XSL-FO |XSLT(Elemente)

Arbeitsentwürfe
und Kandidaten

CCXML |CURIE |SMIL Timesheets |sXBL |WICD |XFrames |XBL | XHTML+MathML+SVG |XMLHttpRequest

Anmerkungen

XAdES |XFDL |XHTML+SMIL |XUP

Richtlinien

Web Content Accessibility Guidelines |Multimodal Interaction Activity |Markup Validation Service

Initiativen

Web Accessibility Initiative

Abgerufen von „https://de.wikipedia.org/w/index.php?title=XMLHttpRequest&oldid=257471589
Kategorie:

[8]ページ先頭

©2009-2026 Movatter.jp