mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Webserver mit Dateiupload


Autor: Tobias M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

im Netz und hier im Forum schwirren ja viele Beiträge zum Thema embedded 
Webserver wie z.B. der von Ulrich Radig herum, der ja auch TFTP 
implementiert hat.

Nun habe ich mich gefragt, ob es möglich ist einen Dateiupload zu 
realisieren, so dass der Benutzer im Webbrowser eine Datei auswählt (so 
wie hier: http://de.selfhtml.org/html/formulare/datei_upload.htm) und 
diese Datei dann z.B. im EEPROM des Mikrocontrollers abgelegt wird. Auf 
der Selfhtml-Seite steht ja, dass dazu ein CGI-Server laufen muss. Geht 
das auch einfacher bzw. hat schon mal jemand einen Datei-Upload 
realisiert?

Viele Grüße und Danke!

Autor: Torsten S. (tse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal nach nach vorne bringen.

Das interessiert mich auch. Der genaue Ablauf ist bestimmt nicht 
unwichtig.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
es muss dafür kein cgi server laufen, das ganze ist ein "normale" 
Postrequest - In den RFCs für HTTPS steht alles nötige drin.

das ganze sollte nicht viel schwerer sein als ein GET-Request. Da ich 
selber auch noch nie http auf meines Atmels gemacht habe, kann ich 
leider nicht sagen ob dafür noch ausreichend resourcen vorhanden sind.

Autor: pq (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
CGI ist eine einfache Schnittstelle. Dahinter kann dann eine  kleines 
C-Programm stecken, das die Daten annimmt und zb. ins EEprom speichert.

Autor: Zwölf Mal Acht (hacky)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist machbar. Ich hab mal einen PUT impementiert, der ist etwas 
verschieden zu einem POST. Ich hab HTML als ASCII und Binaerdateien als 
ASCII-Hex hochgeladen. Ja. auch 200kByte am Stueck. Ah, ja. Der PUT 
hatte die Groesse im Header.

Autor: Simon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Würde mich auch für die Implementierung interessieren. PUT würde voll 
ausreichen, weil die Dateien unter 100kB groß sind.
Würde gerne den Radig Server verwenden, bei dem man dann über die 
Weboberfläche über PUT dateien auf die SD-Karte (BZW. dem EEPROM) 
schreiben kann.
Hat hier nicht jemand bereits eine Lösung und einen greifbaren Quellcode 
zu Hand? Wäre super!

mfg Simon

Autor: Tobias M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mit HTTP POST mal etwas herumprobiert, allerdings macht mir 
multipart/form-data etwas Probleme -> Der Header kommt nur bis zum 
Eintrag
"boundary" an - das wars dann. Muss man dann vom Server aus eine art 
Acknowledge an den Clienten senden, damit die anderen Teile übertragen 
werden?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.