34�5�2 json schnittstelle – Solare Datensysteme Solar-Log Benutzerhandbuch

Seite 235

Advertising
background image

235

Anhang

34�5�2 JSON Schnittstelle

Die JavaScript Object Notation, kurz JSON ist ein kompaktes Datenformat zum Zweck des Datenaus-

tauschs zwischen Anwendungen. Die hier dokumentierten Objekte können für die Verbindung mit anderen

Programmen verwendet werden.

Die aktuellen Daten können über das HTTP-Protokoll abgefragt werden. Hierzu muss eine HTTP-Post-An-

frage an den Solar-Log™ geschickt werden. Das angefragte Objekt muss im Body stehen:

POST /getjp HTTP/1.1

Host: solar-log-xxxx

...

Content-Length: 20

Connection: keep-alive

Pragma: no-cache

Cache-Control: no-cache

{„801“:{„170“:null}}

Die Antwort enthält ein JSON-Objekt als Zeichenkette im Body:

HTTP/1.1 200 OK

Date: Mon, 31 Mar 2014 10:42:32 GMT

Server: IPC@CHIP

Content-Type: text/plain

Transfer-Encoding: chunked

{„801“:{„170“:{„100“:“31.03.14 10:42:15“,“101“:0,“102“:0,“103“:0,“104“:0,“105“:0,“106“:0,“107“:3527647,

“108“:0,“109“:0,“110“:0,“111“:0,“112“:0,“113“:1132434,“114“:0,“115“:0,“116“:45000}}}

Um die Daten in Javascript weiterverarbeiten zu könnnen, muss die JSON-Zeichenkette erst in ein Objekt

umgewandelt werden. Wenn zum Beispiel die Variable „tdata“ die JSON-Zeichenkette enthält, würde die

Umwandlung wie folgt aussehen:

var LiveDaten=JSON.parse(tdata)[801][170];

Danach kann dann über die in der folgenden Tabelle angebenen Indizes auf die einzelnen Datenfelder zu-

gegriffen werden.

So ließe sich zum Beispiel die aktuelle Leistung P

AC

wie folgt ausgeben:

alert(„Die Momentane AC-Leistung beträgt: „ + LiveDaten[101] + „ W“);

Advertising