WiFLY RN171 als Webserver

OP #3691170
Hi,
ich versuche mich gerade an einem WiFLY RN171.
Programmiert in C18 auf einem PIC 18F27J13
Initialisierung, WLan Anbindung usw. funktioniert allles.
Jetzt möchte ich einen kleinen Webserver darauf betreiben.
Also TCP Mode eingeschaltet, Konnectionmeldungen raus.
Grüne LED blinkt langsam, hat also Verbindung.

Erhalte ich eine einkommende Anfrage "get..."
dann gebe ich folgendes aus:

writeRomText("HTTP/1.1 200 OK\r\n");
writeRomText("Content-Type: text/html\r\n");
writeRomText("\r\n");
writeRomText("<html><body>Hallo Welt</body></html>\r\n");
writeRomText("\r\n\r\n");

Die grüne LED leuchtet dauerhaft, es besteht also eine Verbindung.
Diese bleibt aber bestehen, der Webserver wartet weiterhin auf Daten ? 
nichts passiert.
Beende ich die Verbindung im Browser fängt die LED wieder an zu blinken.
Mache ich das mehrfach erhalte ich mit etwas Glück doch die Daten 
angezeigt.
Was habe ich getestet, aber keine spürbare Veränderung:
- nach der Ausgabe von oben (+ Wartezeit 500ms) in den Command Mode 
gewechselt und mit close die Verbindung beendet, mit exit wieder raus 
aus dem Commandmode
- set comm idle auf 1 bzw 2 Sekunden (default unendlich)
- Content length in den Header eingebaut und ausgerechnet, hat aber auch 
nur leidlich funktioniert, wollte darauf aber verzichten

Alles hat nicht geholfen, entweder sagt der Browser dann gleich das der 
Server die Verbindung beendet hat oder Ergebnis wie oben.
In diversen Publikationen wird meist Arduino verwendet und dort, wie ich 
es herausgelesen habe, auch nur die Verbindung gekappt.

Bin gerade mit meinem Latein am Ende, hat jemand eine Idee ?
Holger
OP
Ich hab jetzt mal chunked getestet.
Es geht genau einmal, weitere Anfragen werden nicht mehr beantwortet und 
die Verbindung bleibt stehen.

writeRomText("HTTP/1.1 200 OK \r\n");
writeRomText("Transfer-Encoding: chunked \r\n");
writeRomText("\r\n");
writeRomText("0a;\r\n");
writeRomText("Hallo Welt\r\n");
writeRomText("0;\r\n");
writeRomText("\r\n");

Holger

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.