Forum: PC-Programmierung Programm zum empfang von http requests


von karl (Gast)


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 (prx) A. K. (prx)


Lesenswert?

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

von Rausprüfer (Gast)


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)


Lesenswert?


von Gerald K. (geku)


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)


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)


Lesenswert?

Ich denke Firefox hat einen debugger dabei. firebug oder so. Mit F12 
aufgerufen

von Imonbln (Gast)


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)


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 (prx) A. K. (prx)


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)


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)


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)


Lesenswert?

Bestes Programm für http requests und für lau: https://insomnia.rest/

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
Noch kein Account? Hier anmelden.