Moin,
ich habe mir die Anleitung aus dem Wiki (https://wiki.fhem.de/wiki/CsrfToken-HowTo#Einzeiler) genommen und nur so angepasst, dass es zu meiner Installation passt:
curl -k "https://USER:PW@XXX.XXX.XXX.XXX:8083/fhem?cmd=set%20TouchPanel_Display%20on?XHR=1&fwcsrf="`curl -k -s -D - 'https://USER:PW@XXX.XXX.XXX.XXX/:8083/fhem?XHR=1' | awk '/X-FHEM-csrfToken/{print $2}' | tr -d "\r\n"`
Bei mir schaltet es aber dann den Status auf "on?XHR=1".
Habe ich nun was falsch gemacht oder ist die Anleitung nicht ganz korrekt :-D ?
Vielen Dank für eure Hilfe!
Oh mein 300. Beitrag *freu*
Hi,
den einzigen Unterschied den ich entdecken kann ist
-k, --insecure Allow connections to SSL sites without certs (H)
Also ich denke die Beschreibung ist richtig aber ich werde das testen.
Gruß Otto
Exakt. Das -k ist das flag für CURL das CERT für HTTPS nicht zu prüfen.
Mein CERT ist dreckig und es enthält keine Domain... das wird noch getauscht.
ja sorry habe es gerade gemerkt, ich teste ...
Nimm bitte Codetags, sonst hat hier keiner Lust über den Code nachzudenken :)
Hast Recht - wieder vergessen ;) *fixed*
Ich kann zumindest sagen, Du hast Recht. Da stimmt was nicht. Ich habe das seinerzeit umfangreich probiert, keine Ahnung wo was schief gelaufen ist.
Ich melde mich wieder sobald ich den Fehler gefunden habe. Oder jemand anderes hat ne gute Idee.
Gruß Otto
Danke dir! :)
Wenn Du aus dem ? ein & machst funktioniert es :-[
curl -k "https://USER:PW@XXX.XXX.XXX.XXX:8083/fhem?cmd=set%20TouchPanel_Display%20on&XHR=1&fwcsrf="`curl -k -s -D - 'https://USER:PW@XXX.XXX.XXX.XXX/:8083/fhem?XHR=1' | awk '/X-FHEM-csrfToken/{print $2}' | tr -d "\r\n"`
Ich entsinne mich, da gab es eine heiße Diskussion drum. Und ich bin eigentlich nur der, der es verständlich aufschreiben will - ansonsten bin ich in dieser Thematik ziemlich blind.
Ich schau nach was da war ...
Edit: gefunden -> https://forum.fhem.de/index.php/topic,68133.msg599145.html#msg599145
Aber warum das plötzlich nicht mehr geht? Änderung im FHEMWEB? Ich gehe dem nach ...
Gruß Otto
Funktioniert! Danke sehr 8)
Hallo Master_Nick,
Vielleicht schreibe ich ja auch immer zu viel: Aber was mich interessiert: Warum hast Du aus dem wiki eigentlich die zweite Variante genommen und nicht die Erste? Die funktioniert nämlich, bis auf das raspbian kein curl --data-raw kennt ;)
Gruß Otto
" bis auf das raspbian kein curl --data-raw kennt"
Genau deswegen. Ich testete mich von oben durch. :-)
Hab das auf einem Pi Zero W in einem Python Script, dass über einen PIR das Backlight des Touchs und den Screensaver steuert und dort wird es innerhalb eines os.system()
aufgerufen und gibt an FHEM den Status vom Backlight weiter.
Ach wo Kommunikation kann es nicht zuviel geben, wenn es um Verteilung von Wissen geht!
Ok ;D
Ich habe die erste Variante auch gleich noch geändert. Der Unterschied von -d (--data) und --data-raw ist nur die Behandlung des @ also sollte es in unserem Fall wohl immer einfach mit -d gehen.