本文介紹如何使用OpenAPI調用DescribeZones查詢當前用戶的Zone列表。
步驟一:查看OpenAPI文檔
在調用OpenAPI前,建議您閱讀對應接口文檔,了解、學習調用該接口所需要的參數及權限等。更多詳情請參見API概覽。
步驟二:創建RAM用戶并完成授權
阿里云賬號擁有所有API的訪問權限,建議您創建并使用RAM用戶進行API訪問或日常運維。
您可以使用阿里云賬號(主賬號)、RAM用戶、RAM角色調用該接口,有關各種身份的差異請參見身份。
本案例中,我們使用RAM用戶進行接口調用。
登錄RAM訪問控制。
在左側導航欄,選擇身份管理 > 用戶。
在用戶頁面,單擊創建用戶。
在創建用戶頁面,設置登錄名稱和顯示名稱、訪問方式為控制臺訪問。
單擊確定。
創建RAM用戶成功后,請記錄用戶登錄名稱和密碼。您在調用OpenAPI時需要使用該RAM用戶登錄阿里云OpenAPI開發者門戶。
為RAM用戶授權。
重要AliyunPvtzReadOnlyAccess:只讀訪問內網DNS解析(PrivateZone)服務的權限。
AliyunPvtzFullAccess:管理內網DNS解析(PrivateZone)服務的權限。
如果您需要新建自定義權限,請參見自定義權限策略參考。
訪問RAM用戶列表。
單擊目標RAM用戶操作列的添加權限。
在文本框中輸入關鍵字
Pvtz
進行搜索,選擇AliyunPvtzFullAccess策略。單擊確認新增授權,完成授權操作。
單擊目標RAM用戶名稱,進入到對應的RAM用戶詳情頁,在認證管理頁簽,點擊創建 AccessKey。
更多操作詳情,請參見創建AccessKey。
(可選)步驟三:在線調試OpenAPI
使用RAM用戶登錄阿里云OpenAPI門戶。
選擇云產品為云解析 PrivateZone。
在頂部菜單欄,選擇工具中心>在線調試。
在左側導航欄,找到并單擊DescribeZones接口,然后在服務地址選擇華東1(杭州)。
單擊發起調用。
在調用結果區域,您可以看到查詢結果、Request Header、Response Header等信息,狀態碼200表示調用成功。
步驟四:獲取SDK示例代碼
OpenAPI平臺提供了多種編程語言(Java、Go、Python、Node.js、TypeScript、PHP、C++ 等)的SDK。開發者只需要集成SDK,通過SDK暴露的方法直接調用OpenAPI 。SDK統一封裝了簽名邏輯、超時機制、重試機制,并根據文檔返回結構化 Response 對象,易于開發。
以獲取Java SDK示例代碼為例,其他語言獲取方式相同。
在SDK示例頁簽,選擇SDK版本和SDK語言。推薦使用V2.0版本。關于V2.0和V1.0的區別,請參見V1.0 SDK和V2.0 SDK區別。
單擊下載完整工程可以下載完整的SDK工程。下載完后完成解壓。
說明在SDK示例顯示區域的右上角,單擊圖標可以復制SDK示例代碼。
單擊SDK信息,可以獲取SDK包名稱、SDK包版本、SDK包管理平臺、SDK安裝命令等基礎信息,便于您集成開發。
步驟五:運行SDK示例代碼
以運行Java SDK示例代碼為例。
打開IntelliJ IDEA,單擊File->Open,選擇解壓后的工程文件夾,等待Maven自動安裝依賴信息。
在調用之前,需要先獲取訪問憑證AccessKey,建議使用前面創建的RAM用戶AccessKey。更多信息,請參見創建RAM用戶的AccessKey。
重要獲取RAM用戶的AccessKey之后,還需要在環境變量中設置AccessKey,具體操作步驟請參見在Linux、macOS和Windows系統配置環境變量。
運行示例代碼。
雙擊打開Sample,確認無報錯后,運行代碼。
查看運行結果。在底部控制臺按下
ctrl+f
,搜索statusCode
,如果看到"statusCode":200
表示調用成功。
報錯處理
code: 404, Specified access key is not found.
您在環境變量中配置的AccessKey沒有生效,建議重啟IDE或者系統后重試。
code: 403, User is not authorized to do this operation.
您使用的RAM用戶沒有足夠的權限,無法執行該操作。例如,您授予RAM用戶AliyunPvtzReadOnlyAccess權限,使用該RAM用戶只能查詢接口,調用AddZone等接口時,服務端會返回
code: 403, User is not authorized to do this operation.
。您需要使用阿里云賬號登錄RAM訪問控制,在RAM訪問控制臺,為RAM用戶增加該操作的權限,然后進行操作。