Hallo!
Ich scheitere an den JSON Files, egal was ich mache
und bin schon etwas verzweifelt. Kurz zur Umgebenung: Ich lade per InetRead ein Json-File via REST-API von einem IPAM Server herunter. So weit so gut. Es wird mir auch korrekt im z.B.: Browser angezeigt. Für alle die nicht wissen was ein ipam ist: Ein DHCP/DNS/Netzwerkmanagment Verwaltung.
Jetzt möchte ich aus den Output z.B. alle IPAdressen Aliasnamen und ganz wichtig den REF String herausgebkommen.
Für meine "Gehversuch" habe ich ein Script hier aus dem Forum genommen und versucht diese zu verwenden. Es endet aber immer damit das ich nur einen Fehler bekomme:
"D:\Doc\Autoit\test_ipam.au3" (64) : ==> Variable must be of type "Object".:
Local $aCards[$vTmp.Count]
Local $aCards[$vTmp^ ERROR
Info: Den Output aus dem Json-File habe ich alle @LG und " " entfernt. Ebenso die Klammern [ und ] am Anfang und am Ende. Da es bei keinen der Script hier vorgekommen ist, denke ich das gehört nicht dazu. Der Rest ist ein der Variable als "Input" zusammen gestellt!
Testscript:
#include <JSON.au3>
#include <Array.au3>
$sJSONTest = '{"_ref":"record:host/ZG5zLmhvc3QkLl9kZWZhdWx0LmF0Lmd2Lm1hZ3dpZW4ub3NkLm5iMzU2ODAx:nb12345.meins.at/default","aliases":["vpnchecker.meins.at"],"ipv4addrs":[{"_ref":"record:host_ipv4addr/ZG5zLmhvc3RfYWRkcmVzcyQuX2RlZmF1bHQuYXQuZ3YubWFnd2llbi5vc2QubmIzNTY4MDEuMTAuMTU1LjEwLjE0OS4:10.10.10.10/nb12345.meins.at/default","configure_for_dhcp":true,"host":"nb12345.meins.at","ipv4addr":"10.10.10.12","mac":"00:00:00:dd:e0:7c"}],"name":"nb12345.meins.at","view":"default"}'
Local $oObject = _JSON_Parse($sJSONTest)
$vTmp = _JSON_Get($oObject, "._ref") ;Egal was ich hier eingebe: Es kommt der oben beschriebene Fehler
Local $aCards[$vTmp.Count]
For $i = 0 To $vTmp.Count - 1
$aCards[$i] = $vTmp.Keys[$i]
Next
_ArrayDisplay($aCards)
Alles anzeigen
Ich hoffe ihr könnt mir helfen!
lg
Racer