mikrocontroller.net

Forum: PC-Programmierung libmicrohttpd fehlerhafte Anfragen abfangen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Marco H. (damarco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Folgendes Problem... Ein Client stellt eine GET Anfrage mit body Daten.. 
Was einen falschen Request nachkommt.

Die libmicrohttpd läuft sich dann in einer schleife bis zum timeout tot.

Was passiert ? Sobald die uploaddatasize != 0 will diese wie bei 
Anfragen mit body ein automatisch CONTINUE versenden um den upload 
Prozess in gang zu setzten.

Das ist so weil so verhindert wird das der Client nicht unnötig Daten 
versendet die hinterher verworfen werden. Der HTTP Client reagiert drauf 
natürlich nicht...

Mir gelingt es nicht diesen Prozess zu unterbrechen?  uploaddatasize = 0 
oder  return MHD_NO -> schließt die Verbindung und auch keine Antwort in 
den queue zu schicken.

Das ganze hängt bis zum timeout.. Nun will ich das gerne sauber 
abfangen, da es einige Frameworks gibt mit dem man solche Anfragen 
stellen könnte.

jemand eine Idee?

Autor: Marco H. (damarco)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe es gelöst :).. Also man muss es nochmal in den Kreislauf 
schicken.

return MHD_YES und dann muss die callback Funktion die erneut aufgerufen 
wird den Status erkennen und die entsprechende response zurückliefern.

: Bearbeitet durch User

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.

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