[Gelöst] Ersatz für URI::Escape::XS und JSON::Parse

Begonnen von Thorsten Pferdekaemper, 06 Juli 2018, 16:14:58

Vorheriges Thema - Nächstes Thema

Thorsten Pferdekaemper

Hi,
ich verwende für FUIP (https://wiki.fhem.de/wiki/FHEM_User_Interface_Painter) momentan die Module URI::Escape::XS und JSON::Parse, die anscheinend beide nicht in einer "normalen" FHEM-Installation vorhanden sind. Ich suche jetzt nach einer nicht allzu aufwändigen Möglichkeit, diese Module durch etwas zu ersetzen, das entweder schon in FHEM "enthalten" ist oder das ich durch den normalen FHEM-update-Mechanismus ausliefern kann. Leider reicht es nicht, einfach die beiden .pm-Dateien der Module auszuliefern, da auch noch ein bisschen C-Zeugs dabei ist.
Ich verwende derzeit encodeURIComponent, decodeURIComponent und parse_json.
Danke&Gruß,
   Thorsten
FUIP

JoWiemann

Sofern beide in normalen Debian Paketen, die über apt-get install installiert werden können, vorhanden sind würde ich nichts ändern. Einfach darauf hinweise, welche Pakete nach installiert werden müssen.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

betateilchen


libany-uri-escape-perl
libjson-perl


Zumindest json ist doch inzwischen in FHEM nahezu Standard. Es gibt sogar ein Modul zum Parsen von JSON, wenn ich mich recht erinnere.
Und dass es in FHEM noch nirgends eine selbstgestrickte Lösung für das uriEscape gibt, kann ich mir auch nicht vorstellen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

ZitatUnd dass es in FHEM noch nirgends eine selbstgestrickte Lösung für das uriEscape gibt, kann ich mir auch nicht vorstellen.
urlEncode in HttpUtils.pm

betateilchen

Und libjson-perl steht schon eine ganze Weile in den depends des FHEM Debian Paketes und sollte somit in vielen Installationen vorhanden sein.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Thorsten Pferdekaemper

Hi,
dank Eurer Anregungen konnte ich jetzt die zwei Module rauswerfen.

parse_json aus JSON::Parse habe ich durch from_json aus Modul JSON ersetzt. Das scheint tatsächlich normalerweise vorhanden zu sein (JSON::Parse jedoch nicht).

encodeURIComponent und decodeURIComponent habe ich durch urlEncode und urlDecode aus HttpUtils.pm ersetzt.

Danke&Gruß,
   Thorsten
FUIP