ONTAP tools REST API 實作詳情
雖然 REST 建立了一套通用的技術和最佳實務,但每個 API 的具體實作會因設計選擇而異。在使用 ONTAP tools for VMware vSphere 10 REST API 之前,您應該熟悉其設計方式。
REST API 包含多個資源類別,例如 vCenters 和 Aggregates。請審查 "API 參考" 以了解更多資訊。
如何存取 REST API
您可以透過 ONTAP tools IP 位址和連接埠,存取 ONTAP tools for VMware vSphere 10 REST API。完整的 URL 由以下幾個部分組成:
-
ONTAP tools IP 位址和連接埠
-
API 版本
-
資源類別
-
特定資源
您必須在初始設定期間設定 IP 位址,而連接埠固定為 8443。URL 的第一部分對於每個 ONTAP tools for VMware vSphere 10 執行個體都是一致的;只有資源類別和特定資源在端點之間會有所不同。
|
|
以下範例中的 IP 位址和連接埠值僅供參考。您需要根據自己的環境變更這些值。 |
https://10.61.25.34:8443/virtualization/api/v1/auth/login
可以使用此 URL 透過 POST 方法請求存取權杖。
https://10.61.25.34:8443/virtualization/api/v1/vcenters
此 URL 可用於透過 GET 方法請求已定義 vCenter 伺服器執行個體的清單。
HTTP 詳情
ONTAP tools for VMware vSphere 10 REST API 使用 HTTP 及相關參數來操作資源執行個體和集合。HTTP 實作的詳細資訊如下。
HTTP 方法
下表列出了 REST API 支援的 HTTP 方法或謂詞。
| 方法 | CRUD | 說明 |
|---|---|---|
取得 |
讀取 |
擷取資源執行個體或集合的物件屬性。與集合搭配使用時,此操作視為清單操作。 |
POST |
建立 |
根據輸入參數建立新的資源執行個體。 |
PUT |
更新 |
使用提供的 JSON 要求本文更新整個資源執行個體。使用者不可修改的鍵值將會保留。 |
PATCH |
更新 |
請求將請求中選定的一組變更套用至資源執行個體。 |
刪除 |
刪除 |
刪除現有資源執行個體。 |
請求和回應標頭
下表摘要說明 REST API 所使用的最重要 HTTP 標頭。
| 標題 | 類型 | 使用說明 |
|---|---|---|
接受 |
要求 |
這是用戶端應用程式可以接受的內容類型。有效值包括 '*/*` 或 |
x-auth |
要求 |
包含一個存取權杖,用於識別透過用戶端應用程式發出請求的使用者。 |
Content-Type |
回應 |
伺服器根據 `Accept`請求標頭傳回。 |
HTTP 狀態碼
以下說明 REST API 所使用的 HTTP 狀態碼。
| 程式碼 | 意義 | 說明 |
|---|---|---|
200 |
確定 |
表示呼叫成功,且該呼叫不會建立新的資源執行個體。 |
201 |
已建立 |
已成功建立具有資源執行個體唯一識別碼的物件。 |
202 |
已接受 |
請求已被接受,並已建立背景工作來執行該請求。 |
204 |
無內容 |
請求成功,但沒有回傳任何內容。 |
400 |
錯誤的請求 |
要求輸入無法辨識或不適當。 |
401 |
未經授權 |
使用者未獲得授權,必須驗證。 |
403 |
禁止 |
由於授權錯誤,存取被拒絕。 |
404 |
找不到 |
請求中引用的資源不存在。 |
409 |
衝突 |
嘗試建立物件失敗,因為該物件已存在。 |
500 |
內部錯誤 |
伺服器發生一般性內部錯誤。 |
驗證
用戶端對 REST API 的驗證是透過存取權杖完成的。權杖和驗證程序的相關特性包括:
-
用戶端必須使用 ONTAP tools Manager 管理員憑證(使用者名稱和密碼)要求權杖。
-
令牌的格式為 JSON Web Token (JWT)。
-
每個權杖的有效期限為 60 分鐘。
-
用戶端發出的 API 請求必須在 `x-auth`請求標頭中包含權杖。
有關請求和使用存取權杖的範例,請參閱 "您的第一次 REST API 呼叫"。
同步請求和非同步請求
大多數 REST API 呼叫都能快速完成,因此是同步執行的。也就是說,請求完成後,它們會傳回一個狀態碼(例如 200)。而耗時較長的請求則會使用背景工作非同步執行。
發出非同步執行的 API 呼叫後,伺服器會傳回 202 HTTP 狀態碼。這表示請求已被接受,但尚未完成。您可以查詢背景工作以確定其狀態,包括成功或故障。
非同步處理用於多種類型的長時間執行操作,包括資料存放區和 vVol 操作。如需詳細資訊,請參閱 Swagger 頁面上 REST API 的工作管理程式類別。