NetLook: HTTP POST ?!

Hallo!

Kann mir das jemand mal für dummys erklären?!

Hier:
http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol

steht:
POST /wiki/Spezial:Search HTTP/1.1
Host: de.wikipedia.org
Content-Type: application/x-www-form-urlencoded
Content-Length: 24

search=Katzen&go=Artikel

In was für eine Datei muss das denn packen, html, php. xml ?

Und das antworter der Server:
HTTP/1.0 302 Moved Temporarily
Date: Fri, 13 Jan 2006 15:32:43 GMT
Location: http://de.wikipedia.org/wiki/Katzen

Wie sieht das aus, wenn der antwortet?! Erscheint das im Browser oder wie?

Gruß
NetLook

  1. Hi!

    Kann mir das jemand mal für dummys erklären?!

    Lies dir die Erklärung in SelfHTML durch, wenn du den Wikipedia-Artikel nicht verstehst.

    POST /wiki/Spezial:Search HTTP/1.1
    Host: de.wikipedia.org
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 24

    search=Katzen&go=Artikel

    In was für eine Datei muss das denn packen, html, php. xml ?

    Wieso sollte das in eine Datei gepackt werden?
    Was willst du damit bezwecken?
    Das ist sozusagen die Sprache, in der sich Browser und Webserver unterhalten.

    Und das antworter der Server:
    HTTP/1.0 302 Moved Temporarily
    Date: Fri, 13 Jan 2006 15:32:43 GMT
    Location: http://de.wikipedia.org/wiki/Katzen

    Wie sieht das aus, wenn der antwortet?!

    Das ist die Antwort.

    Erscheint das im Browser oder wie?

    Nein. Der Browser zeigt sowas nicht an.
    (Naja, es gibt natürlich Möglichkeiten, die Kommunikation zwischen Server und Browser sichtbar zu machen, aber das ist ja nicht das Normale...)

    Der Browser zeigt nur die folgende HTML-Seite an.
    Oder folgt einer Umleitung.
    In deinem Beispiel sagt der Server dem Browser, daß die angeforderte Seite sich nun woanders befindet.
    Der Browser wird darauf reagieren, indem er die Seite von der neuen Adresse anfordert.

    Schöner Gruß,
    rob

  2. Moin,

    Kann mir das jemand mal für dummys erklären?!

    Ich kanns versuchen... Aber weiter lesen musst du dann selbst

    Hier:
    http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol

    Das Hypertext-Transfer-Protocol ist das Protokoll, mit sich z.B. ein Browser und ein Webserver unterhalten.

    steht:
    POST /wiki/Spezial:Search HTTP/1.1
    Host: de.wikipedia.org
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 24

    search=Katzen&go=Artikel

    In was für eine Datei muss das denn packen, html, php. xml ?

    Häh? Das sieht mir eher danach aus, das es die Eingaben aus einem Formular sind. Wenn du ein Formular im Browser auffüllst und auf Abschicken klickst, verpackt dein Browser das ganze in HTTP. Zuerst kommt ein Header, damit der Webserver weiss, was er damit anfangen soll.

    Die erste Zeile sagt ihm, das es sich um per POST gesendete Daten handelt. Danach kommt die Adresse an die die Daten geschickt werden sollen, sowie der Name des (virtuellen) Servers (auf einer IP können mehrere Webserver, die anhand des Namens unterschieden werden liegen). Die Zeile mit dem Content-Typ sagt dem Server was er da bekommen hat, die letzte Zeile des Headers sagt ihm, wie lang der Datenteil ist. Dann kommt eine Leerzeile, die Header und Daten trennt.

    Der Webserver versucht die Daten an /wiki/Spezial:Search zu übergeben (das kann z.B. eine PHP-Skript sein, das diese verarbeitet).

    Und das antworter der Server:
    HTTP/1.0 302 Moved Temporarily
    Date: Fri, 13 Jan 2006 15:32:43 GMT
    Location: http://de.wikipedia.org/wiki/Katzen

    Die Resource, an die die Daten geschickt werden sollten gibt es an der Position nicht mehr. Der Server antwortet schickt daher diese Meldung zurück an den Brower. Diese konkrete Meldung sagt dem Browser, dass die Ressource jetzt woanders liegt.

    Was der Browser dann damit anstellt, ist ihm überlassen. Er könnte eine Meldung anzeigen, aber auch einfach die Anforderung nochmal an die richtige Adresse schicken, ohne dass der Benutzer was davon mitbekommt...

    Gruß

    Stareagle

  3. Hallo zusammen, danke für eure Hilfe, das hat mich auf jedenfall schon weiter gebracht!

    Gruß
    NetLook