FHEM Forum

FHEM => Sonstiges => Thema gestartet von: klaus.schauer am 22 Juli 2024, 09:20:27

Titel: HTTPMOD: URL-Encoding gemäß RFC 1738
Beitrag von: klaus.schauer am 22 Juli 2024, 09:20:27
Kann man und wenn ja wie die Funktion setXXEncode im Modul HTTPMOD zum URL-Encoding des Parameters $val gemäß RFC 1738 einsetzen?
Falls das nicht möglich ist, gibt es einen anderen Weg?
Titel: Aw: HTTPMOD: URL-Encoding gemäß RFC 1738
Beitrag von: klaus.schauer am 22 Juli 2024, 15:26:49
Zitat von: klaus.schauer am 22 Juli 2024, 09:20:27Kann man und wenn ja wie die Funktion setXXEncode im Modul HTTPMOD zum URL-Encoding des Parameters $val gemäß RFC 1738 einsetzen?
Falls das nicht möglich ist, gibt es einen anderen Weg?
Reservierte Zeichen in einen in der URI gesendeten Text kann man mit attr <device> setXXIExpr <perl expr> kodieren:
$val =~ s/([^A-Za-z0-9\-_.~])/sprintf("%%%02X", ord($1))/eg;
$val . '';
Vielleicht geht es noch einfacher.
Titel: Aw: HTTPMOD: URL-Encoding gemäß RFC 1738
Beitrag von: betateilchen am 22 Juli 2024, 16:21:28
Beschreibe doch mal, was Du eigentlich tun willst, anstatt hier halbgare Lösungen zu präsentieren.
Es würde das Helfen erheblich erleichtern.

Spontan:

$val = urlEncode($val);
Die Funktion urlEncode ist in HttpUtils.pm definiert.
Titel: Aw: HTTPMOD: URL-Encoding gemäß RFC 1738
Beitrag von: klaus.schauer am 22 Juli 2024, 16:56:53
Zitat von: betateilchen am 22 Juli 2024, 16:21:28Beschreibe doch mal, was Du eigentlich tun willst, anstatt hier halbgare Lösungen zu präsentieren.
Es würde das Helfen erheblich erleichtern.
Wie schon beschrieben: Reservierte Zeichen in einen in der URI gesendeten Text konvertieren.
Titel: Aw: HTTPMOD: URL-Encoding gemäß RFC 1738
Beitrag von: rudolfkoenig am 22 Juli 2024, 17:25:01
In HttpUtils.pm gibt es eine Funktion urlEncode()