如何使用带有softlayer rest api的对象过滤器?

我阅读了
this article并尝试按照示例遇到一些问题.以下是该文章中给出的一个例子.对象过滤器中的第一个参数是virtualGuests.此对象过滤器可用于api
https://api.softlayer.com/rest/v3/SoftLayer_Account/VirtualGuests.

object_filter = {
'virtualGuests': {
    'datacenter': {
        'name': {'operation': 'dal05'}
        }
    }
}

我想在其他api方法中使用对象过滤器,例如SoftLayer_Account / getBlockDeviceTemplateGroups.我的问题是如何获取/设置像virtualGuests这样的第一个参数?我试了好几次但都失败了.

最佳答案 尝试遵循这些建议:通过服务数据类型获取第一个参数或如何以简单的方式定义第一个参数?

通过服务数据类型获取第一个参数

你想要得到

> SoftLayer_Account::getBlockDeviceTemplateGroups

如您所见,您正在使用SoftLayer_Account服务,您需要从此服务打开其数据类型:

>你可以去这里:
http://sldn.softlayer.com/reference/services/SoftLayer_Account
单击“datatypes”标签/选项
>或者直接去这里:
SoftLayer_Account

所以,你需要从这里开始,你正在使用的方法是getBlockDeviceTemplateGroups,如果你想在数据类型中获取这些信息,你应该跳过单词“get”并查找“BlockDeviceTemplateGroups”属性,这样你就会有正确的首先需要设置的参数.

《如何使用带有softlayer rest api的对象过滤器?》

如何将第一个参数定义为简单方法?

如果你注意到,唯一的变化是:从方法中跳过“get”字,在这种情况下是“getBlockDeviceTemplateGroups”,所以它将是:

“BlockDeviceTemplateGroups”

下一步应该设置小写的第一个字符,如:

“blockDeviceTemplateGroups”

所以,它应该是过滤器:

object_filter = {
'blockDeviceTemplateGroups': {
    'datacenter': {
        'name': {'operation': 'dal05'}
        }
    }
}

参考文献:

> Object Filters
> Going Further with the SoftLayer API Python Client – Part
1

点赞