NEWS
http json request auf "Datei"
-
Hallo in die Runde
bin noch ganz frisch in der iobroker-Welt unterwegs und sehe wahrscheinlich vor lauter Bäumen den Wald nicht.
Wie auf dem kleinen screenshot zu sehen ist, greife ich auf "Informationen" in einer json-Datei zu.
Das klappt soweit auch ganz gut.
Im Moment liegt diese json-Datei im Verzeichnis /var/www/html und somit wahrscheinlich durch den apache ausgeliefert.Meine Frage nun:
Gibt es auch eine Alternative, diese Datei an einen beliebigen Ort zu packen, um dann ganz klassisch per Pfadangabe drauf zugreifen zu können - also ohne dass noch ein apache dazwischen werkelt?Danke & Gruß
Thomas -
@thomas-b sagte: klassisch per Pfadangabe drauf zugreifen zu können
Mit dem Block "exec" und Kommando "cat".
-
@paul53 Ganz herzlichen Dank!
Ausprobiert habe ich es zwar noch nicht, werde es heute abend aber sofot angehen.
Der exec-Block veranlaßt also, daß die Ausgabe des cat-Befehls in die Systemvariable "result" geschrieben wird.Für mein Verständnis:
In deiner noch eingebauten Fehlerabfrage (auch Danke dafür) stehen die beiden Variablen "error" und "stderr".
Sind diese beiden Variablen ebenfalls Systemvariablen?
Wenn ich eine normale Variable frei definiere und dieser noch kein Wert explizit zugewiesen wurde, ist diese doch mit dem Wert "null" belegt - oder?Gruß
Thomas -
@thomas-b sagte: ebenfalls Systemvariablen?
Das sind keine Systemvariablen, sondern durch Blockly festgelegte lokale Variablen: Parameterübergabe an die Callback-Funktion.
exec('cat /pfad/WerteListe.json', async function (error, result, stderr) {
@thomas-b sagte in http json request auf "Datei":
Variable frei definiere und dieser noch kein Wert explizit zugewiesen wurde, ist diese doch mit dem Wert "null" belegt - oder?
Mit dem Wert
undefined
. -
@paul53 Es klappt - Danke nochmal!
-
Es sind unter Unix/Linux sogenannte Standard Datenströme, die zum Austausch von Daten zwischen Programmen genutzt wird. Die Ausgabe eines Programms kann entweder in einem anderen Programm weiterverwendet werden oder wird letztendlich auf der shell oder terminal (oder was auch immer da mit dem Betriebssystem gerade verbunden ist) ausgegeben.
https://de.wikipedia.org/wiki/Standard-Datenströme
Blockly, aber auch javascript etc. machen sich das zu Nutze bei der Ausführung von shell-Programmen um das Ergebnis dann wieder weiterverarbeiten zu können. -
@oliverio Danke!