Hallo, bin inzwischen mit meinem EasyTCP und ATMEGA162 soweit gekommen daß ich eine TCP Verbindung aufbauen kann und Daten empfangen kann. Ich teste das erfolgreich mit einem TCP Testprogramm. Wenn ich nun mit dem Internet Explorer auf meinen Webserver zugreife, so empfange ich "Get /HHTP...." und antworte darauf mit "<html><body><p><i>Hallo Welt!!!</i></font></p></body></html>". Leider zeigt mein Explorer immer an daß er diese Seite nicht öffnen kann. Wenn ich genau diesen Text in eine Datei "test.htm" einklebe und diese öffne so funzt es. Was fehlt da das mein Web Server nicht schickt?? Ist bestimmt nur eine Kleinigkeit, ich bekomm es aber nicht gebacken. Vorab danke für eure Hilfe. Gruß Thomas
ich würde mal vermuten, daß dein browser nicht weiß dass es sich um eine html datei handelt. da war doch was das sich "header" nannte oder??
Guten Morgen, danke erst mal für die Vorschläge, werde ich ausprobieren. Wieso sollte mein Explorer nicht wissen daß es HTML ist? Wenn ich das gleiche in einer HTM Datei öffne hab ich auch keinen Header und er zeigts an. @Ulrich: Ich werde nach dem Text mal abkneifen und sehen was passiert. Habe aber erst heute abend Zeit. Ist es so daß der Client die Verbindung aufbaut und der Server wieder schließt? Melde mich dann wieder. Gruß Thomas
Hi AFAIK können beide die Verbindung abbauen. Aber typischerweise baut der die Verbindung ab der sie auch aufgebaut hat. Ich würde evtl. auf ein fehlendes CR/LF oder sowas tippen. Matthias
Versuch mal, mit z.B. Ethereal den Datenverkehr zwischen Server und Client abzuhorchen. Das könnte schon weiterbringen. Greetz KMT
Hallo, bei der Kommunikation zwischen Browser und Webserver wird ein wenig mehr an Informationen ausgetauscht als nur die gewünschte Webseite und der HTML-Code. Beginnen wir bei der Anfrage des Clients: GET http://sleeper/AspHeute/SortedList/iterateforeach.aspx HTTP/1.0 Accept: */* Referer: http://sleeper/AspHeute/SortedList/ Accept-Language: en-us Proxy-Connection: Keep-Alive User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461; .NET CLR 1.0.3705) Host: sleeper Pragma: no-cache Da der Browser neu geöffnet war, und ich keine andere Seite auf diesem Server vorher angesurft hatte, wird kein Cookie an den Server geschickt. Dafür aber erfährt der Server von uns, welchen Browser wir verwenden, welche Sprachen von uns akzeptiert werden, und auch woher wir kommen Und natürlich ist die erste Information wie die Seite angefragt wird: GET oder POST. Die Antwort des Servers ist zweigeteilt - und zwar durch eine Leerzeile. Der erste Teil sind die Header der Antwort, nach der Leerzeile folgt der eigentliche Content: HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Date: Mon, 04 Mar 2002 20:47:58 GMT Cache-Control: private Content-Type: text/html; charset=utf-8 Content-Length: 122 ASP.NET - aspDEdotnet@aspfriends.com<br> C# - dotnetDEcsharp@aspfriends.com<br> VB.NET - dotnetDEvb@aspfriends.com<br> gruß Thorsten Quelle: "Mitlauschen bei der Browser-Webserver Kommunikation", http://www.aspheute.com/artikel/20020305.htm
Hallo alle, danke für die zahlreichen Antworten. Ein erster Test zeigt daß Ulrich auf dem richtigen Dampfer war. Wenn ich die Verbindung nach dem Text im Server abkneife so bekomme ich mein "Hallo Welt". Die anderen Beiträge sehe ich mir in Ruhe an und werde das eine oder andere daraus noch extrahieren und nutzen. Eine weitere Hürde ist erstmal genommen. DANKE!! Gruß an alle Thomas
Du solltest dir auch mal die RFC 2068 und 2616 anschauen (evtl RFC822). RFC=Request for comments, offener Standart für alles was im Netzwerk abläuft, also auch die Übertragunng einer HTML-Seite per HTTP. Download bei http://www.rfc-editor.org/rfc.html Außerdem sind es 2x CR+LF die das Ende des Headers anzeigen. Und zum Schluß, im Antwort-Header wird "Date:" und "cache-control" nicht unbedingt benötigt. Was der Browser aber brauchen kann ist die "Content-length" (Größe der Seite in Bytes). Gruss
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.