[vz-dev] Temperatur / 1wire / httplog - GET / Post ?

Justin Otherguy justin at justinotherguy.org
Thu Nov 10 08:20:29 CET 2011


Moin Klaus,

Am 10.11.2011 um 06:58 schrieb Klaus Reichenecker:

> Message: GET /middleware.php/data/?95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=22.4\n
> - funktioniert nicht für die Temperatur, aber:
> 
> curl -d "" http://demo.volkszaehler.org/middleware.php/data/95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=24,9
> funktioniert
der Unterschied ist das "?" zwischen "data/" und der UUID; es gefällt der Middleware nicht, wenn der Pfad nicht mit einem Format (z. B. .json) endet:

  curl -d "" http://demo.volkszaehler.org/middleware.php/data/95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=24,9

vs.

  curl -d "" http://demo.volkszaehler.org/middleware.php/data/?95d98700-07da-11e1-bb04-0fe73f97b4c6.json?value=24,9

Hier die Antwort auf den 2. Request:

{"version":"0.2","exception":{"message":"Missing format","type":"Exception","code":0}}

-> missing format -> der Pfad endet nicht auf .json (oder eines der anderen zulässigen Formate; das kommt erst in den URL-Parametern, s. [0])

Wenn Du das "?" aus Zeile 50 in protocols/httplog/httplog.c rausoperierst, sollte es tun:

diff httplog.c*
50c50
<     "GET " CONF_HTTPLOG_PATH "?";
---
>     "GET " CONF_HTTPLOG_PATH ;

Gib Bescheid.

> Könnte es evtl. damit zusammen hängen das ich Ethersex nicht von Eurer Seite, sondern direkt installiert habe ?
nein, das hat damit nix zu tun.

Ein Hinweis zu den UUIDs: die solltest Du nicht veröffentlichen (ML...), da so jeder Zugriff auf die Daten hat. Für Aussentemperaturwerte und für Stromprofile von PV-Anlagen ist das unkritisch, für die anderen eher nicht. Wenn das also bei Dir alles läuft, solltest Du neue UUIDs generieren und die dann für die finale Installation verwenden.


Gruss, J.

[0] http://wiki.volkszaehler.org/development/api/reference



More information about the volkszaehler-dev mailing list