Я пытаюсь использовать некоторые данные, полученные из API в формате JSON, но изо всех сил пытаюсь использовать их любым реальным способом.Я не уверен, что данные не совсем такие, как ожидалось, или проблема в том, как я их обрабатываю.
$result = Invoke-WebRequest -Method Post -URI "http://vwhmcs.com/includes/api.php" -Body $Body
Это вызов API, отсюда нужные мне данные находятся в $ result.content и выглядят так:
{"result":"success","totalresults":2,"startnumber":0,"numreturned":2,"clients":{"client":[{"id":2,"firstname":"Edward","lastname":"Franks","companyname":"","email":"EdwardFranks@mail.com","datecreated":"2018-10-09","groupid":0,"status":"Inactive"},{"id":1,"firstname":"Frank","lastname":"Tighe","companyname":"U32 Consultation","email":"frank@u32.co.uk","datecreated":"2018-10-08","groupid":0,"status":"Active"}]}}
Что является допустимым JSON (я его проверил).чтобы попытаться сделать это пригодным для использования, я делаю
$result = ($result.content | convertfrom-json)
Что на первый взгляд, кажется, работает
PS C:\WINDOWS\system32> $result
result : success
otalresults : 2
startnumber : 0
numreturned : 2
clients : @{client=System.Object[]}
Однако, если я пытаюсь перемещаться по этим данным, я вижу, что это не такне полностью проанализирован.
PS C:\WINDOWS\system32> $result.clients | ft -AutoSize -Wrap
client
------
{@{id=2; firstname=Edward; lastname=Franks; companyname=; email=EdwardFranks@mail.com; datecreated=2018-10-09; groupid=0; status=Inactive}, @{id=1; firstname=Frank; lastname=Tighe;companyname=U32 Consultation; email=frank@u32.co.uk; datecreated=2018-10-08; groupid=0; status=Active}}
Теперь я вижу, что эти данные не в формате допустимого JSON, но если вы проверите ранее данные, это было.Функция convertfrom-json удалила с нее речевые метки, что говорит о том, что данные были в порядке, но я вызываю эту функцию неправильно.
Может кто-нибудь сказать мне, как это сделать правильно?