Forum: PC-Programmierung Programm zum empfang von http requests


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.
von karl (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Hi Leute,

ich habe ein ESP32 Board und lerne gerade wie man http Requests via WLAN 
versendet. Nun bin ich auf der Suche nach einer einfachen Gegenstelle, 
die den http request empfängt und mir die http Parameter anzeigt. Könnt 
Ihr mir dazu einen Tipp geben ?

Vielen Dank

von A. K. (prx)


Bewertung
2 lesenswert
nicht lesenswert
Linux: "nc -l 8080" bei offener Firewall.
ESP32: Request an http://ebendieseslinux:8080/

von Rausprüfer (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ein simples php-script das du mit php -S meinServer:meinport
startest.
Mit deinem ESP schickst du die Anfrage an meinServer:meinport
und das Script gibt dir entspr. Dinge aus die dich interessieren.

Das simpelste Script was man machen kann:

<?php
var_dump($_REQUEST);
?>

Da steht dann schon vieles drinn.

Oder lesbarer/übesichtlicher:
<?php
  foreach($_REQUEST as $wert) {
    echo "$wert" . \n;
  }
?>

von UniVerse (Gast)


Bewertung
1 lesenswert
nicht lesenswert

von Gerald K. (geku)


Bewertung
0 lesenswert
nicht lesenswert
Ich habe das einmal gemacht, in dem icb einen  kleinen Server in c 
geschrieben habe.
(je einfacher der Code umso größer der Lerneffekt)

Der Server lauscht auf eine Abrage von einem Client z.B. Web-Browser.

Dieses Servercodebeispiel könnte dazu verwendet werden :

https://www.geeksforgeeks.org/tcp-server-client-implementation-in-c/

Das Programm kann bei Bedarf mit GET und POST Methode erweitert werden.

: Bearbeitet durch User
von Imonbln (Gast)


Bewertung
0 lesenswert
nicht lesenswert
karl schrieb:
> Hi Leute,
>
> ich habe ein ESP32 Board und lerne gerade wie man http Requests via WLAN
> versendet. Nun bin ich auf der Suche nach einer einfachen Gegenstelle,
> die den http request empfängt und mir die http Parameter anzeigt. Könnt
> Ihr mir dazu einen Tipp geben ?
>
> Vielen Dank

Ich empfehle dir zumindest auf einer Seite was „Offizielles“ zu nehmen, 
um sicherzugehen, dass du auch wirklich halbwegs Standard konform bist. 
Wie wäre es zum Beispiel mit einem nignx oder Lighttpd, mit 
entsprechender Parametrierung sollten die sehr Verbose erzählen, was sie 
Empfängen und wenn nötig kannst du auch noch einen Wireshark auf dem 
Server mitlaufen lassen.

von Pandur S. (jetztnicht)


Bewertung
0 lesenswert
nicht lesenswert
Ich denke Firefox hat einen debugger dabei. firebug oder so. Mit F12 
aufgerufen

von Imonbln (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Pandur S. schrieb:
> Ich denke Firefox hat einen debugger dabei. firebug oder so. Mit
> F12
> aufgerufen

ich versehe den TO so das er einen http Server braucht, das geht leider 
nicht mit dem FF

von Gerald K. (geku)


Bewertung
-1 lesenswert
nicht lesenswert
Imonbln schrieb:
> ich versehe den TO so das er einen http Server braucht, das geht leider
> nicht mit dem FF

Genau so ist es!

Der TO möchte Daten, die  von seinem Gerät, an einen HTTP-Server 
geschickt werden, sicbtbar machen.

Es reicht ein einfacher Server, der mit seiner IP-Adresse auf einen Port 
z.B. 80 oder 8080, auf Datenpakete lauscht, die ihm ein Klient zusendet. 
Der Server soll die Daten in Klartext ausgeben.

Das Serverbeispiel in C erfüllt diese Anforderung :

https://www.geeksforgeeks.org/tcp-server-client-implementation-in-c/

: Bearbeitet durch User
von A. K. (prx)


Bewertung
2 lesenswert
nicht lesenswert
Gerald K. schrieb:
> Das Serverbeispiel in C erfüllt diese Anforderung

Das von mir oben erwähnte netcat (nc) gibts auch für Windows. Ist im 
Grunde eine etwas flexiblere Version ebendieses Serverbeispiels: So wie 
ich oben angab horcht es auf den angegebenen Port und gibt alles aus, 
was da ankommt.

von Gerald K. (geku)


Bewertung
-3 lesenswert
nicht lesenswert
A. K. schrieb:
> Ist im Grunde eine etwas flexiblere Version ebendieses Serverbeispiels

Wie äußert sich diese Flexibilität?
Liegt nc auch im Quellcode vor?

Gerade der Quellcode bietet die größte Flexibilität. Man kann leicht 
eigene Erweiterungen hinzufügen und für jede POSIX Plattform 
compilieren.

von Rolf M. (rmagnus)


Bewertung
1 lesenswert
nicht lesenswert
Gerald K. schrieb:
> A. K. schrieb:
>> Ist im Grunde eine etwas flexiblere Version ebendieses Serverbeispiels
>
> Wie äußert sich diese Flexibilität?

Man kann es z.B. als client oder server verwenden, man kann udp oder tcp 
wählen, es unterstützt auch IPv6, man kann einen Proxy nutzen und noch 
vieles mehr.
Einfach mal die Manpage lesen.

> Liegt nc auch im Quellcode vor?

Ja klar. Man kann sogar zwischen verschiedenen Implemementationen 
wählen. Es gibt z.B. GNU netcat, OpenBSD netcat und ncat. Letzteres kann 
z.B. auch SSL.

von Miro V. (miro_v)


Bewertung
-1 lesenswert
nicht lesenswert
Bestes Programm für http requests und für lau: https://insomnia.rest/

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.