Hallo alle, ich arbeite ja seite einige zeit mit dem XPort AR und jetzt versuche ich den XPort mit einem andere web server zu verbinden bis da keine problem gehabt. nach die Verbindung will ich einige datei from dem web server holen und da kommt der Mikrocontroller im spiel. ich weissse das um die Daten im Web zu holen muss ich eine HTTP Request machen. und da habe ich noch keine erfahrung. kann jemand mir sagen wie ich ein solche request machen kann. oder wo ich die Litteratur darüber finden kann N.B.: Der Mikrocontroller der ich benutze ist die ATmega16 von ATmel und die Programme schreibe ich im C. Ich danke Ihnen im voraus für Ihre Hilfe MFG Pablo
> telnet www.mikrocontroller.net 80 Trying 88.198.17.227... Connected to www.mikrocontroller.net. Escape character is '^]'. > GET / HTTP/1.0 > HTTP/1.0 404 Not Found Date: Fri, 26 Oct 2007 10:44:52 GMT Server: LiteSpeed Connection: close Cache-Control: private, no-cache, max-age=0 Pragma: no-cache Content-Type: text/html Content-Length: 390 <html> <head><title> 404 Not Found </title></head> <body><h1> 404 Not Found </h1> ...
Halloo!! ich verstee nicht was du geschrieben hast. kannst du das einbischen ausführliche machen Bitte Oliver. Danke
Hallo! hat jemand eine idee? ich brauche Ihre Hilfe MFG Pablo
Vielleicht hilft das hier (englisch): http://en.wikipedia.org/wiki/Http_request oder auf Deutsch: http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol
Requests machst du über GET oder Post. Bei GET werden deine Parameter in die Adresse verpackt, bei POST an die Html File angehängt. Du könntest zum Beispiel mit GET ein Skript auf dem Server aufrufen, dass dir deine Daten übergibt, oder direkt die Dateien ansprechen? Gesendet wird als String, mit carriage return und line feed, wenn man sich genau an die spec hält, verpackt in TCP/IP, verpackt in Ethernet. Das heißt für deine Antworten erhälst du einen gewissen Nachrichtenoffset, falls du auf unterster Ebene arbeitest. Ansonsten kann ich dir den Fiddler2 empfehlen, das ist ein freier Webdebugger, der als zusätzliche Schnittstelle zwischen Client und Server fungiert. Damit kannst du z.B. auch erst mal auslesen wie z.B. eine Googleanfrage realisiert ist oder ähnliches, ich denke das hilft dir weiter. Wer fragt eigentlich? Der Xport, oder der uC?
>Wer fragt eigentlich? Der Xport, oder der uC?
Steht do oben: Mit dem XPORT soll ein anderer Webserver angesprochen
werden.
Icke Muster wrote:
> bei POST an die Html File angehängt.
An welches Html-File? Man schickt doch einen POST-Request. Da gibt es
nur den POST-Header und eben die Parameter. Aber doch kein Html-File.
der Mikrocontroller schickt der HTTP request zum XPort und der XPort sollt sich mit ein bestimmte website verbinden und dort daten holen und per serielle zum Mikrocontroller weiter schicken. da ist ein Beispiel das ich machen will. aber ich habe keine Ahnung wie ich diese request schreiben kann MFG Pablo
Der Xport muss sich mit dem Webserver auf Port 80 verbinden. Danach schickst du GET /dateiname HTTP/1.0\n\n an den Webserver (der 2. Zeilenumbruch schliest den Request ab und der Webserver antwortet). Wenn du noch Daten zum Webserver senden willst, häng sie an den Dateinamen an: GET /index.html?hallo=welt&ich=hier HTTP/1.0\n\n Da Heutzutage die meisten Webserver mehr als eine Domain bedienen (Vhost) must du eventuell noch angeben welche Domain du haben willst: Host: www.mikrocontroller.net Im ergebniss also: GET /topic/82044 HTTP/1.0 Host: www.mikrocontroller.net [Leifert dir diesen Thread] Zum testen kann man (wie oben erwähnt) telnet benutzen.
Hallo, mir ist in diesem Zusammenhang noch nicht ganz klar, wie die Implementierung eines HTTP-GET-Requests auf dem XPort-AR abläuft. Muss ich das HTTP selbst implementieren oder gibt es direkt eine schnittstelle in den CLI-commands?? also eine art GET-Kommando so wie bei Telnet? Ich weiß es gibt Befehle für TCP-Vebindungen. Über die könnte ich mir das HTTP-Protokoll selber zusammenbauen und so eine Verbindung über Port 80 am Webserver erstellen. Oder geht es eben doch einfacher? Danke!
Paul Zeman schrieb: > also eine art GET-Kommando so wie > bei Telnet? Telnet hat kein GET-Kommando. Hier wird telnet als mehr oder weniger transparente Konsole<->TCP Brücke verwendet. Genauso kannst du den XPort als Seriell<->TCP Brücke verwenden. Also: Probier das mit dem Telnet mal aus. Wenn du's verstanden hast: Alles was du auf der Tastatur eingetippt hast, musst du (bzw der µC) nacher an den XPort senden (nach dem Verbindungsaufbau)
Vielen Dank! Werd ich mich gleich mal dahinter setzen! LG
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.