www.wikidata.de-de.nina.az
Die Query Komponente haufig auch Query String englisch fur Abfrage Zeichenkette ist Teil eines Uniform Resource Locators URL im World Wide Web und in RFC 3986 spezifiziert 1 Die Query Komponente enthalt Daten haufig in Form von benannten Parametern die an einen Webserver gesendet und vom nachgeschalteten Server Teil einer Webanwendung ausgewertet werden konnen Inhaltsverzeichnis 1 Aufbau 2 Beispiel 2 1 Auswertung in PHP 3 Nachteile und Probleme 3 1 Kodierung 3 1 1 Trennzeichen fur Parameter 3 2 Sicherheitsrisiken 3 3 Technische Beschrankungen 4 Siehe auch 5 EinzelnachweiseAufbau BearbeitenEin Query String wird mit einem Fragezeichen eingeleitet und endet mit einem Doppelkreuz oder dem Ende des URLs Er besteht oft aus einem oder mehreren Parametern haufig in Form von Schlussel Wert Paaren die oft mit einem Et Zeichen amp voneinander getrennt werden Parametername und wert werden durch ein reserviertes Zeichen meist ein Gleichheitszeichen getrennt Die genannten Trennzeichen entsprechen der Vorgabe des World Wide Web Consortiums W3C fur die Ubertragung von HTML Formular Daten 2 Der folgende URL enthalt den Query String stichwort wiki amp ausgabe liste http www example org suche stichwort wiki amp ausgabe listeDabei ist dem Parameter stichwort der Wert wiki und dem Parameter ausgabe der Wert liste zugeordnet Beispiel BearbeitenEin Webformular ist folgendermassen implementiert lt form action suche php method get gt lt label for stichwort gt Suche nach lt label gt lt input type text name stichwort id stichwort gt lt input type hidden name suchdatum value 2023 11 25 gt lt input type submit value Suche starten gt lt form gt Zu beachten ist dabei das verborgene type hidden Feld suchdatum Es ist im Browser nicht sichtbar wird beim Absenden des Formulars aber dennoch Teil des Query Strings Die Submit Schaltflache wird hingegen nicht in den Query String aufgenommen da fur diese keine Bezeichnung name vergeben wurde Gibt der Benutzer in das Textfeld das Stichwort wiki ein und sendet das Formular ab wird beispielsweise folgender URL mit dem entsprechenden Query String stichwort wiki amp suchdatum 2023 11 25 generiert http lt server gt suche php stichwort wiki amp suchdatum 2023 11 25 Auswertung in PHP Bearbeiten In PHP lasst sich der Query String abfragen Dabei ist der Inhalt des Query Strings als Array verfugbar echo GET stichwort gibt beispielsweise den Text aus der in das Suchfeld eingetragen wurde print r GET ergibt mit dem Beispiel von oben Array stichwort gt wiki suchdatum gt 2023 11 25 Nachteile und Probleme BearbeitenKodierung Bearbeiten Hauptartikel URL Encoding Einige Zeichen durfen nicht in einem Query String auftreten da diese ansonsten fehlerhaft interpretiert werden konnen Wird das Gleichheitszeichen beispielsweise innerhalb eines Wertes benutzt wird dieses falschlicherweise als Schlussel Wert Trennzeichen erkannt Beim Generieren des Query Strings mussen diese Zeichen speziell codiert werden beispielsweise musste ein Leerzeichen in ein Pluszeichen umgewandelt werden Trennzeichen fur Parameter Bearbeiten Das Et Zeichen amp als Trennzeichen von Schlussel Wert Paaren ist innerhalb von HTML Dokumenten problematisch da dieses Zeichen laut dem World Wide Web Consortium W3C speziell kodiert sein muss Das W3C empfiehlt daher eine Trennung der Paare durch ein Semikolon 3 Sicherheitsrisiken Bearbeiten Da der Query String Teil des URLs ist ist er fur jeden Internetnutzer im Browser einseh und auch modifizierbar In einer Webanwendung sollten demnach nur unkritische Parameter in den Query String eingefugt werden etwa die Eingabe in einem Suchfeld Technische Beschrankungen Bearbeiten Muss eine grossere Menge von Daten ubergeben werden empfiehlt es sich diese nicht uber den URL sondern im Message Body mittels der HTTP Methode POST zu ubermitteln da fur URLs einige Beschrankungen gelten Die HTTP Spezifikation empfiehlt aus Kompatibilitatsgrunden eine Maximalgrosse von 255 Bytes fur URLs bzw URIs 4 Der Internet Explorer unterstutzt keine URLs die aus mehr als 2083 Zeichen bestehen 5 Webserver konnen die Maximallange eines Query Strings selbst begrenzen Bei einer Uberschreitung dieser Grenze sendet der Server den HTTP Statuscode 414 an den Client zuruck Die mittlerweile veraltete HTML 3 Spezifikation schreibt eine Maximallange von Linkzielen von 1024 Zeichen vor 6 Diese Beschrankung ist seit HTML 4 nicht mehr vorhanden Siehe auch BearbeitenClean URLEinzelnachweise Bearbeiten T Berners Lee R Fielding L Masinter RFC 3986 Uniform Resource Identifier URI Generic Syntax Errata RFC 3986 Januar 2005 Abschnitt 3 4 Query Standard 66 lost RFC 2732 ab aktualisiert durch RFC 6874 englisch 17 Forms 17 13 4 Form content types In HTML 4 01 Specification World Wide Web Consortium W3C 27 Marz 2018 abgerufen am 27 November 2019 englisch W3C Empfehlung fur das Trennen der Key Value Pairs RFC 2616 HTTP 1 1 Abschnitt 3 englisch support microsoft com HTML 3 Spezifikation Abgerufen von https de wikipedia org w index php title Query String amp oldid 234763296