NEWS
Daten aus einem String extrahieren
-
Hi, nach einem Aufruf einer URL bekomme ich einen String zurück, aus dem ich gern einzelne Daten herauslösen würde. In erster Linie geht es mir hier um die GeofenceID [1] (die Zahl die zwischen den eckigen Klammern steht, und idealerweise gegen eine andere Zahl [9999] getauscht wird, falls dort nichts steht []). Aber auch die Werte von "status":"online","lastUpdate":"2020-07-18T13:34:56.142+0000" wären interessant.
Der URL Aufruf ist:
http://admin:passwort@192.168.0.191:8082/api/devices/1?all=trueDas Resultat hiervon ist:
{"id":1,"attributes":{},"groupId":1,"name":"Joerg","uniqueId":"8844937","status":"online","lastUpdate":"2020-07-18T13:34:56.142+0000","positionId":7044,"geofenceIds":[1],"phone":"","model":"","contact":"","category":"person","disabled":false}Wie könnte ich da vorgehen?
Mein Blockly bisher: -
@J_Paul
Versuche es mal so: -
Vielen Dank. Das klappt gut so:
-
Beim Aufruf von:
http://192.168.0.191:8082/api/positions/?id=1einen etwas anderen Aufbau der Antwort:
[{"id":1,"attributes":{"batteryLevel":76.0,"distance":0.0,"totalDistance":0.0,"motion":false},"deviceId":1,"type":null,"protocol":"osmand","serverTime":"2020-07-14T07:13:11.926+0000","deviceTime":"2020-07-14T07:13:10.000+0000","fixTime":"2020-07-14T07:13:10.000+0000","outdated":false,"valid":true,"latitude":53.554856,"longitude":9.921739,"altitude":34.33077621459961,"speed":0.0,"course":286.171875,"address":null,"accuracy":10.0,"network":null}]Funktioniert das dort anders?
Im Log erscheint beim Versuch:
script.js.common.traccar_joerg2: setForeignState: undefined is not a valid state value -
für die id:
die daten sind etwas anders aufgebaut
mit einem json-online editor (z.b. https://jsoneditoronline.org/#left=local.qipuhe&right=local.balica )kannst du die daten besser ansehen und so den pfad finden, den du brauchst
oder
-
-
Danke, auch der Tip war gut.
-
@paul53 Könnte man in Blockly auch einen bestimmten Wert auslesen?
so dass ich den Wert von Name (hier Bettina) bekomme, wenn ich die id (hier 3) übergebe, oder muss man dann sowas bauen wie, such nach erstem "id": 3 usw. -
@J_Paul sagte:
muss man dann sowas bauen wie, such nach erstem "id": 3 usw.
Eine Schleife über das Array benötigt man schon.
-
@paul53 Vielen Dank, das baue ich mal nach.