SOFTLAYER REST API 使用 objectFilter 的错误结果
SOFTLAYER REST API Wrong result using objectFilter
我正在使用 SOFTLAYER REST API 来获取虚拟机列表,然后 select 结果之一,并仅获取有关 selected 机器的更多详细信息。
我使用这个 URL 通过主机名获取机器详细信息,但我得到了所有机器的结果,而不是我 selected
URL :
https://api.softlayer.com/rest/v3.1/SoftLayer_Account/getVirtualGuests.json?objectMask=mask[id,hostname,fullyQualifiedDomainName,provisionDate,powerState,operatingSystem[id,passwords[password,username],softwareDescription[longDescription]]]&objectFilter={"hostname":{"operation":"SLRAMONT02"}}
我应该怎么做才能得到正确的结果?
我将 python 与相同的 url 一起使用,得到了预期的结果,但在调试后我发现 python 正在将 JSON 转换为 XML 并使用 SOAP API.
我不打算使用 python API,而是 JAVA。我可以使用 JAVA API 提出相同的请求吗?
基本上在这里得到了回答:。
根据您的情况,您需要使用以下过滤器:
objectFilter={"virtualGuests":{"hostname":{"operation":"SLRAMONT02"}}}
另外我建议复习:
不幸的是 Softlayer-Java API 还不支持对象过滤器,这里有评论:
https://github.com/softlayer/softlayer-java/issues/30
如果您确实需要在 Java 中使用对象过滤器,您可以尝试使用 RESTFul,以下链接中有一些 RESTful 示例。
https://www.mkyong.com/webservices/jax-rs/restfull-java-client-with-java-net-url/
https://www.mkyong.com/webservices/jax-rs/restful-java-client-with-apache-httpclient/
我正在使用 SOFTLAYER REST API 来获取虚拟机列表,然后 select 结果之一,并仅获取有关 selected 机器的更多详细信息。
我使用这个 URL 通过主机名获取机器详细信息,但我得到了所有机器的结果,而不是我 selected
URL :
https://api.softlayer.com/rest/v3.1/SoftLayer_Account/getVirtualGuests.json?objectMask=mask[id,hostname,fullyQualifiedDomainName,provisionDate,powerState,operatingSystem[id,passwords[password,username],softwareDescription[longDescription]]]&objectFilter={"hostname":{"operation":"SLRAMONT02"}}
我应该怎么做才能得到正确的结果?
我将 python 与相同的 url 一起使用,得到了预期的结果,但在调试后我发现 python 正在将 JSON 转换为 XML 并使用 SOAP API.
我不打算使用 python API,而是 JAVA。我可以使用 JAVA API 提出相同的请求吗?
基本上在这里得到了回答:
根据您的情况,您需要使用以下过滤器:
objectFilter={"virtualGuests":{"hostname":{"operation":"SLRAMONT02"}}}
另外我建议复习:
不幸的是 Softlayer-Java API 还不支持对象过滤器,这里有评论:
https://github.com/softlayer/softlayer-java/issues/30
如果您确实需要在 Java 中使用对象过滤器,您可以尝试使用 RESTFul,以下链接中有一些 RESTful 示例。
https://www.mkyong.com/webservices/jax-rs/restfull-java-client-with-java-net-url/ https://www.mkyong.com/webservices/jax-rs/restful-java-client-with-apache-httpclient/