HTTP-Statuscodes mit HttpUtils_NonblockingGet

Begonnen von TomLee, 22 April 2026, 17:02:49

Vorheriges Thema - Nächstes Thema

TomLee

Hi,

ich hab für 24h den Statuscode einer Webseite minütlich abgefragt. Es kam immer nur 200 zurück (edit2: darüber bin ich froh und das wollt ich sehen). Es gab aber auch wenige Abfragen da kam einfach nichts.

Meine Frage ist warum kommt nix und nicht irgendein anderer (Fehler)-Code zurück? Was könnte der Grund sein?
defmod at_reqweb at +*00:01:00 {\
HttpUtils_NonblockingGet(\
{ url=>"https://die website.tld",   callback=>sub($$$)\
{\
my $state = $_[0]->{code};;\
my ($error, @content) =  FileRead("/opt/fhem/reqwebsite.log");;\
my $logline = time()." CODE=".$state;;\
$logline .= " ERROR=".$_[1] if ($_[1]);;\
push(@content, $logline . "\n");;\
FileWrite("/opt/fhem/reqwebsite.log", @content);;\
}\
})\
}

Gruß Thomas

edit: schon etwas weiter, wenn keine Internetverbindung (bspw. bei der Zwangstrennung), kommt nix zurück.
edit3: Fehlermeldung ergänzt

betateilchen

Ein http-Statuscode kommt immer nur zurück, wenn Du eine Gegenstelle erreicht hast. Die Antwort mit dem Statuscode wird vom (entfernten) Server erzeugt, nicht lokal im Client.

https://de.wikipedia.org/wiki/HTTP-Statuscode
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!