http Server selber schreiben

  • Themenstarter Themenstarter saskia
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

saskia

Gast
Hallo, ich habe angefangen einen httpServer zu schreiben. Get request werden auch schon berücksichtigt, normale html Seiten werden schon angezeigt, nur hab ich jetzt keine Ahnung, wie ich einen Post verarbeiten soll. Vom DataInputStream des Sockets, hab ich mal herausgefiltert, ob es sich um Get, Post oder was anderes handelt. Wie muss ich nun weiter vorgehen? Soll entweder zur bearbeitung von Servlets, oder cgi dienen.
 
ja sicher, und auf den Server hab ich mal Testseiten laufen lassen
 
Der einzige Unterschied ist, das bei Post die Paramter im Body übertragen werden und nicht an die URL angehängt werden. D.h. du mußt jetzt den Http-body parsen und daraus Objekte bauen oder was auch immer.
Guck dir mal die HTTp-Spezifikation an, da steht alles drin. Ich habe auch mal einen kleinen Webserver geschrieben für Interprozesskommunikation. Das ist total praktisch wenn man z.b. wissen will ob ein Programm schon gestartet wurde oder welchen Zustand es gerade hat. Dann kann man mit XML-RPC over HTTP den Server ansprechen und sich Informationen ziehen.

Viele Grüße
foobar
 
ok, so weit klar, nur hab ich irgendwie keinen plan, wie ich an den body komme. Kann mir wer einen Tip geben
 
saskia hat gesagt.:
ok, so weit klar, nur hab ich irgendwie keinen plan, wie ich an den body komme. Kann mir wer einen Tip geben
Einfach nach dem Header weiter aus dem Stream lesen - der Header wird durch eine Leerzeile beendet, danach folgen die Post-Daten. Wenn im Header das Content-Length-Feld gesetzt war (das sollte bei POSTs der Fall sein), dann weisst Du schon, wieviele Daten Du lesen musst; ansonsten kannst Du nur hoffen, dass auch nach den POST-Daten eine Leerzeile kommt (das ist m.W. normalerweise so, wird aber durch das Protokoll wohl nicht explizit gefordert)
Genau kannst Du das in den entsprechenden RFCs (1945 und 2616) nachlesen
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben