POST über Socket (php/http)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • POST über Socket (php/http)

    Hallo zusammen,

    bei der Programmierung eines Submit-Scripts für die automatische Anmeldung an Suchmaschinen bin ich auf ein Problem

    gestossen. Ich hoffe, hier kennt sich jemand mit dem HTTP-Standards aus...

    Bekanntlich gibt es zwei Methoden, den einem Script Variablen zu übergeben: GET und POST. Mit GET klappt es bei mir

    wunderbar, nur mit POST habe ich ein Problem.

    Mein Script geht eine Liste von Suchmaschinen durch und erstellt dann mit fsockopen() eine Verbindung zum jeweiligen Server

    her. Dann wird mit fputs() ein HTTP-Request auf das Eintragungs-Script gesetzt. Anhand der Rückmeldung werte ich aus, ob die

    übergebene URL von der Suchmaschine akzeptiert wurde.

    Ein Beispiel für den GET-Aufruf, den ich mit fputs() sende:

    GET /cgi-bin/addurl.cgi?var1=value1&var2&value2%var3=value3 HTTP/1.0

    Das klappt wunderbar. Nun gibt es aber auch einige schlaue Scripte, die nicht für GET optimiert sind, sondern nur mit POST

    arbeiten :-( Das krieg ich nicht in den Griff. Wie muß mein HTTP-Request aussehen, damit ich auch solch ein Script

    aufgerufen bekomme?

    Ich hoffe, Ihr könnt mir helfen.

    Ciao,
    Markus

    ----

    email: m.bopp@vcin.de

  • #2
    Falls niemand hier die Frage beantworten kann:

    Schau dich mal in den RFCs auf http://www.faqs.org/rfcs/ um, hoffentlich findest du da was du brauchst.
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      Habe die Lösung gefunden

      Hallo Leute,

      habe inzwischen die Lösung für mein Problem gefunden. Hier ist sie:

      Ein Post-Request sieht folgendermassen aus:


      POST /index.php HTTP/1.1
      Host: http://www.xyz.de
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 16

      func=show&menu=1


      Daraufhin folgt die Antwort des Servers, die entweder in Form einer Webseite (HTML) oder auch einer Umleitung (Headerzeile Location: ..URL...) oder einer Fehlermeldung kommen kann.

      Achja, wichtig ist der o.a. Content-Type. Content-Length gibt die Längde der urlkodierten Daten an.

      Weitere Infos gibt es in der RFC 2068, die allerdings echt umfangreich ist...

      bye,
      Markus

      PS: Danke an Tobi, der mir den entscheidenden Hinweis gegeben hat.

      Kommentar

      Lädt...
      X