单个Softlayer API用于收集来自不同服务的信息

时间:2017-01-06 10:34:18

标签: api ibm-cloud-infrastructure

SoftLayer的API为API中表示的不同对象提供了不同的“服务”。虚拟客户机,裸机服务器,VLAN,IP地址等都是不同类型的服务。这些服务之间也有链接,因此我想使用单个API查询来获取有关多个服务的信息。对象掩码是加入不同服务的一种方式。 任何人都可以告诉我如何使用对象掩码实现它。

1 个答案:

答案 0 :(得分:0)

您可以在此处查看有关对象掩码的信息:

http://sldn.softlayer.com/article/object-Masks

现在所有服务都附加到您的帐户,因此您需要查看该服务: http://sldn.softlayer.com/reference/datatypes/SoftLayer_Account http://sldn.softlayer.com/reference/services/SoftLayer_Account

该服务提供了几种方法来获取不同的服务,例如虚拟客户: http://sldn.softlayer.com/reference/services/SoftLayer_Account/getVirtualGuests

或获取您帐户中的所有裸机服务器: http://sldn.softlayer.com/reference/services/SoftLayer_Account/getHardware

使用对象掩码,您只需调用getObject方法并添加所需的属性,例如,请参阅此RESTFul以获取虚拟客户机,裸机服务器和VLans:

GET https://$USERNAME:$APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Account/getObject?objectMask=mask[virtualGuests,hardware,networkVlans]

因此,您可以在单个请求中获取所需的所有信息,但是当您的响应包含大量数据时,您的请求将引发异常,为了处理您需要在请求中使用结果限制可以在此处查看有关如何将其添加到您的请求的更多信息: https://sldn.softlayer.com/article/REST

此致