GET-Parameter

Die Methode getParameter() ist die am weitesten verbreitete HTTP-Request-Methode, um Ressourcen durch einen Klienten (zum Beispiel einen Browser) von einem Server anzufordern. Da die übertragenen Seiteninhalte oder Dateien mithilfe von URLs angefordert werden, ist auch die Bezeichnung URL-Parameter gebräuchlich.

Allgemeine Informationen

Die Kommunikation zwischen Klienten und Servern im Internet erfolgt meist über das HTTP-Protokoll (engl.: Hypertext Transfer Protocol). Es erlaubt den Datenaustausch in Form von Anfragen und Antworten (engl.: Request and Response). Ein Klient ist zum Beispiel ein Webbrowser eines Nutzers; Der Server stellt eine HTML-Seite bereit, die vom Browser des Nutzers geladen wird. Die beiden am häufigsten verwendeten Methoden, um diese Art der Kommunikation zu ermöglichen, sind GET und POST.

GET Anfrage

Fragt ein Klient mithilfe des HTTP-Protokolls auf einem Webserver nach einer bestimmten Ressource, übermittelt der Klient dem Server mit der angefragten URL bestimmte GET-Parameter. Diese Parameter sind Paare aus Namen und dazugehörigen Werten – sogenannte Name-Wert-Paare. Diese werden mit dem Zeichen ? an die URL angefügt und sagen dem Server, welche Ressourcen gemeint sind. Name und Wert werden dabei stets durch ein = voneinander getrennt.

Die Syntax sieht folgendermaßen aus:

http://www.domain.de/index.html*?name1=wert1

Es können nicht nur einzelne, sondern auch mehrere Parameter bis hin zu ganzen Listen an den Server übermittelt werden. Dafür werden die einzelnen Parameter mit dem &-Zeichen voneinander getrennt.

http://www.domain.de/index.html*?name1=wert1&name2=wert2

Ist die Anfrage syntaktisch korrekt, sendet der Server eine Antwort. Sie enthält zunächst bestimmte Statusinformationen über die Anfrage. Zum Beispiel ob die angeforderte Ressource vorhanden ist oder wann die Anfrage stattgefunden hat. Der Server schickt nun nicht die Ressource zum Klienten, sondern sagt ihm, wo er die Ressource finden kann. Der Browser befolgt die Anweisung und fragt die Ressource beim Server an. Erst jetzt lädt der Browser die Ressource anhand der ortsbasierten Daten, die ihm der Server zur Verfügung gestellt hat. Der Grund liegt darin, dass das HTTP-Protokoll immer nur eine einseitige Kommunikation erlaubt. Auf jede Anfrage erfolgt zunächst nur eine Antwort.

Anmerkungen zum GET-Parameter

Anfragen mit getParameter() haben bestimmte Eigenschaften und auch Nachteile.[1] Da die Daten per URL übergeben werden, ist es ratsam, nur Daten, die nicht sicherheitsrelevant sind, per GET-Parameter abzufragen.

  • Speicherung im Cache möglich
  • Erhaltung in der Browser Historie
  • Speicherung als Lesezeichen möglich
  • Keine Eignung für die Verwendung mit sensiblen Daten
  • Einschränkung der Länge (URL Länge)
  • In erster Linie ist ihr Zweck, Daten einzuholen

Praxisbezug

URLs mit Parametern werden auch als dynamische URLs bezeichnet. Durch das Ändern der Parameter entsteht eine neue URL und der Seiteninhalt kann sich dynamisch verändern. Wenn zum Beispiel ein Onlineshop Produkte auf einer Kategorienseite eingepflegt hat und ein Nutzer diese Seite mit seinem Browser lädt, werden ihm die neuen Produkte ebenfalls angezeigt, weil die URL der Seite auch veränderte Inhalte mithilfe der GET-Parameter abgefragt hat.

Bedeutung für die Suchmaschinenoptimierung

Das Entstehen von dynamischen URLs bei der Verwendung von getParameter() bringt Nachteile mit sich. Durch die Dynamik kann es passieren, dass teilweise gleicher Content unter mehreren URLs generiert wird. So entstandener Duplicate Content ist schlecht für das Ranking der Seiten, weshalb er aus SEO-Sicht bestimmte Maßnahmen zur Vermeidung hervorruft. In diesem Fall ist es ratsam, das Canonical Tag einzusetzen, damit der Suchmaschinen-Crawler die doppelten Seiten ignoriert.

Ein weiterer Aspekt, der durch die Verwendung von getParamteter() wichtig wird, ist die Lesbarkeit der URL. Die Parameter in der URL sind meist kryptisch und die Namen der auftretenden Parameter nichtssagend. Es besteht die Möglichkeit, eine dynamische URL mit Hilfe der Rewrite Rules in der htaccess-Datei zu einer sprechenden URL umzuschreiben. Diese ist besser lesbar und aussagekräftiger. Bei diesem Vorgang ist darauf zu achten, dass keine Informationen verloren gehen. Der Vorteil von sprechenden URLs ist, dass sie vermeintlich eine höhere Click-Through-Rate erzeugen, was für die SEO sehr wichtig ist. Suchmaschinen können zwar mit dynamischen URLs umgehen, bevorzugen aber sprechende URLs.

Einzelnachweise

  1. HTTP Methods: GET vs. POST w3schools.com. Abgerufen am 08.05.2015

Weblinks