Hyptertext Transport Protocol
Das Hypertext Transport Protocol (HTTP) wird hauptsächlich für den Transport von Daten im Netzwerk in Verbindung mit HTML verwemdet. HTTP wird normalerweise in Verbindung mit TCP/IP verwendet und der Standard Port ist 80.
Inhaltsverzeichnis
Befehle
Für die Kommunikation werden verschiedene Befehle mit Parametern verwendet.
POST
POST beschreibt eine Anfrage um Daten zu erhalten und senden, wobei die Argumente eine beliebige Länge besitzen können.
POST <pfad/resource> <protokoll> <requestheader> <payload>
Der Pfad für die Resource entspricht z.B. der Webseite, die aufgerufen werden soll. Die Angabe <protokoll> entspricht HTTP/1.0 bzw. HTTP/1.1, je nach benötigter Version. Im Payload werden die Übertragungsparameter übertragen, welche z.B. über eine Form eingegeben wurden.
name=huhu¶meter2=hallo
Im Gegensatz zur GET Methode unterliegen die Paremter hier keiner Begrenzung und eignen sich daher zur Übertragung von großen Datenmengen. Desweiteren werden die Paramter nicht an die URL angehängt wodurch z.B. keine Bookmarks möglich sind, jedoch auch die Parameter nicht so einfach einsehbar sind, was bei Logindaten aber vorteilhaft sein kann.
GET
GET beschreibt eine Anfrage um Daten zu erhalten und senden, wobei die Argumente eine beliebige Länge besitzen können.
GET <pfad/resource>?<parameter> <protokoll> <requestheader>
Der Pfad für die Resource entspricht z.B. der Webseite, die aufgerufen werden soll. Die Parameter werden direkt an die URL angehängt wodurch diese sehr lang werden können.
/pfad/index.php?name=huhu¶meter2=hallo
Parameter Die Angabe <protokoll> entspricht HTTP/1.0 bzw. HTTP/1.1, je nach benötigter Version.
Im Gegensatz zur POST Methode unterliegen die Paremter hier einer Begrenzung abhängig vom Server und eignen sich daher nur begrenzt Übertragung von Daten. Da die Parameter an die URL angehängt wodurch z.B. Bookmarks möglich sind, jedoch sind die Parameter einfach einsehbar, was bei Logindaten nicht vorteilhaft ist.
Request Header
Der Header für ein Reqest besteht aus verschiedenen Parameter Parameter: Wert
Parameter | Beschreibung | Beispiel |
---|---|---|
Host | Adresse des Hosts, der aufgerufen werden soll | Host: wiki.byte-welt.net |
User-Agent | Browsername des Clients | User-Agent: Opera 9.23 |
Accept | Mimetypen die der Client unterstützt bzw. erwartet | Accept: text/xml,application/xml |
Accept-Language | Sprachen die der Browser bevorzugt, wodurch der Browser die Sprache für die Webseite auswählen kann | Accept-Language: de-de,en |
Accept-Encoding | Unterstüzte Komprimierung die der Client unterstützt | Accept-Encoding: gzip,deflate |
Accept-Charset | Unterstützte Zeichencodierung | Accept-Charset: ISO-8859-1,UTF-8 |
Statuscodes
- 200 - Anfrage war erfolgreich
- 404 - Resource konnte nicht gefunden werden
- mehr zu Status Codes: http://forum.byte-welt.net/sonstiges/byte-welt-fundgrube/18224-http-status-codes.html