对 SoftLayer_Network_Storage/000000/allowAccessFromHost 的 REST API 调用因 stdClass 错误而失败
REST API call to SoftLayer_Network_Storage/000000/allowAccessFromHost fails with stdClass error
我正在发布此请求(000000 == 虚拟访客 ID,000001 == iSCSI ID):
POST .../SoftLayer_Network_Storage/000001/allowAccessFromHost
{
"parameters":[
{
"typeClassName": "SoftLayer_Virtual_Guest",
"hostId": 000000
}]
}
我得到的响应是:class stdClass 的对象无法转换为字符串
URL中的ID是iSCSI设备的正确ID,hostId参数中的ID是我的Virtual Guest的ID。我错过了什么?
我设法用这个(0000000 == Virtual Guest ID,00000001 == iSCSI ID)完成了同样的事情:
POST .../SoftLayer_Virtual_Guest/0000000/allowAccessToNetworkStorage.json
{
"parameters":
[
{
"id": 00000001
}
]
}
不知道为什么另一种方法不起作用。
尝试以下方法
POST .../SoftLayer_Network_Storage/000001/allowAccessFromHost
{
"parameters":[
"SoftLayer_Virtual_Guest",
000000
]
}
当你创建 REST 请求时考虑到参数和对象 属性 是不同的,在 JSON 正文中你不应该放参数名,只需要按相同的顺序放值.另一方面,您需要像在第二个 API 调用中那样输入 属性 名称。
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/allowAccessFromHost
http://sldn.softlayer.com/reference/services/softlayer_virtual_guest/allowaccesstonetworkstorage
我正在发布此请求(000000 == 虚拟访客 ID,000001 == iSCSI ID):
POST .../SoftLayer_Network_Storage/000001/allowAccessFromHost
{
"parameters":[
{
"typeClassName": "SoftLayer_Virtual_Guest",
"hostId": 000000
}]
}
我得到的响应是:class stdClass 的对象无法转换为字符串
URL中的ID是iSCSI设备的正确ID,hostId参数中的ID是我的Virtual Guest的ID。我错过了什么?
我设法用这个(0000000 == Virtual Guest ID,00000001 == iSCSI ID)完成了同样的事情:
POST .../SoftLayer_Virtual_Guest/0000000/allowAccessToNetworkStorage.json
{
"parameters":
[
{
"id": 00000001
}
]
}
不知道为什么另一种方法不起作用。
尝试以下方法
POST .../SoftLayer_Network_Storage/000001/allowAccessFromHost
{
"parameters":[
"SoftLayer_Virtual_Guest",
000000
]
}
当你创建 REST 请求时考虑到参数和对象 属性 是不同的,在 JSON 正文中你不应该放参数名,只需要按相同的顺序放值.另一方面,您需要像在第二个 API 调用中那样输入 属性 名称。
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Storage/allowAccessFromHost
http://sldn.softlayer.com/reference/services/softlayer_virtual_guest/allowaccesstonetworkstorage