2016-03-02 100 views

回答

0

可以使用goblal標識符,而不是ID在請求

例如,在所有

Get https://api.softlayer.com/rest/v3.1/SoftLayer_Hardware/$GloblalIdentifier/getObject 

Note: replace the $GloblalIdentifier 

爲什麼不顯示該ID的原因是因爲服務器尚未創建,您的訂單已被批准,當供應結束了的ID會顯示出來,同時可以使用全局標識符當供應結束,你將能夠看到ID

問候

0

這裏SoftLayer_Hardware::createObject說:

要確定當服務器availabl e您可以通過 SoftLayer_Hardware::getObject, 查詢ProvisionDate屬性來輪詢服務器。當provisionDate不爲空時, 服務器將準備就緒。 Be sure to use the globalIdentifier as your initialization parameter

請看下面的例子:

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Hardware/[globalIdentifier_value]/getObject 

Method: GET 

而且,你可以使用SoftLayer_Account::getHardware有一些過濾器Bare Metal信息:

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Account/getHardware?objectFilter={"hardware":{"hostname":{"operation": "myhostname"}, "domain":{"operation": "mydomain"}}}&objectMask=mask[id,fullyQualifiedDomainName,provisionDate] 
Method: GET 

注意:您可以爲了獲得更多的補充一些口罩信息超過默認值,即在前一個請求中,您可以看到provisionDate(當provisionDate不爲空時,服務器將準備就緒)。

列表Bare metal服務器過濾通過username誰創造了他們:

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Account/getHardware?objectFilter={ "hardware": {  "billingItem": {  "orderItem": {   "order": {   "userRecord": {    "username": {    "operation": "myusername"    }   }   }  }  } } }&objectMask=mask[id,fullyQualifiedDomainName,billingItem.orderItem.order.userRecord.username,provisionDate] 
Method: GET 

你也可以查看:

Softlayer API to get virtual guest owner

-1

感謝您的答案。不幸的是,這是一個雞/蛋問題。一旦API調用被髮送,我得到一個GloblalIdentifier,但不是一個id。

如果我問這個GloblalIdentifier我取得編號爲空

的響應。如果我得到的硬件服務器的上市,我看到新機子有沒有,有一個id,但GloblalIdentifier是無。

沒有意義。

+0

我更新了我的答案,但是當配置過程結束時,您將看到該ID將從null更改爲其值。僅當配置過程結束時,id纔會更新。因此您可以使用該行爲來了解服務器準備就緒的時間。另一種方法是列出您的服務器並查找您的服務器並查看其交易,以瞭解它是否已準備就緒。 –

+0

並且僅當配置過程結束時,您將看到全局標識符和id在blth邊更新(列出服務器並使用globalidentifier獲取對象) –

相關問題