0
鑑於我正在處理以下$json
變量,我將如何獲取每個服務器ID(即在此例中爲215d1109-216d-48c3-af8e-998bb9bc3ca0
和440cf918-3ee0-4143-b289-f63e1d2000e6
)並將其放入數組中?
現在$obj.servers.id
什麼也沒有返回(如預期的那樣),但是$obj.servers.id[0]
返回錯誤消息。
clear
[System.Reflection.Assembly]::LoadWithPartialName("System.Web.Extensions") | out-null
$json = '
{
"servers": [
{
"admin_password": "qpYU66rKxmnK",
"id": "215d1109-216d-48c3-af8e-998bb9bc3ca0",
"links": [
{
"href": "http://openstack.example.com/v3/servers/<id>",
"rel": "self"
},
{
"href": "http://openstack.example.com/servers/<id>",
"rel": "bookmark"
}
]
},
{
"admin_password": "wfksH3GTTseP",
"id": "440cf918-3ee0-4143-b289-f63e1d2000e6",
"links": [
{
"href": "http://openstack.example.com/v3/servers/<id>",
"rel": "self"
},
{
"href": "http://openstack.example.com/servers/<id>",
"rel": "bookmark"
}
]
}
]
}
'
$ser = New-Object System.Web.Script.Serialization.JavaScriptSerializer
$obj = $ser.DeserializeObject($json)
$obj.servers.id;
請注意,我使用Powershell 2.0。
謝謝!這樣一個簡單的錯誤。我也意識到'$ obj.server.id'應該是'$ obj.servers.id'。但我不知道如何循環並獲取每個id值,然後將其添加到數組中? – methuselah