API 從開發到上線是一個連續的生命週期流程:先在開發環境中完成測實驗證,確認請求參數與返回結果符合預期後,再將 API 發布至 API Gateway進行託管,最後通過版本管理持續跟蹤每次發布的變更。本文將按照測試 → 發布 → 版本管理 → 下線的順序,完整介紹該流程中的關鍵操作。
測試 API
API 測試的本質是直接存取實際資料來源或後端服務來調用 API,用於驗證請求參數和返回結果是否符合預期。資料服務提供兩種測試情境:在服務開發頁面測試開發中的 API,以及在服務管理頁面測試發行的 API。
API 測試會佔用資料服務資源群組資源,產生相應的資源群組費用。在進行大規模或頻繁測試前,請留意計費情況。計費詳情請參考公用資料服務資源群組計費。
測試開發中的 API
測試開發中的 API 是指在服務開發頁面(即開發環境)中進行測試。在測試之前,您需要先通過嚮導模式或指令碼模式產生 API,或通過註冊已有服務的方式註冊 API。
操作步驟:
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,在下拉框中選擇對應工作空間後單擊進入資料服務。
在左側 API 列表中,雙擊要測試的 API 名稱,進入 API 編輯頁面。
在 API 編輯頁面中,找到並單擊測試按鈕,開啟API測試對話方塊。
在對話方塊左側地區,為每個請求參數填入測試值。
單擊開始測試,觸發 API 呼叫。
查看測試結果:
測試完成後,您可以在對話方塊右側查看以下資訊:
請求詳情:展示本次測試的完整請求資訊,包括請求路徑、要求標頭和請求體等內容,方便確認請求構造是否正確。
返回內容:展示 API 的響應資料,即實際的查詢結果。您可以對比返回內容與預期結果,確認 API 邏輯是否正確。
響應時長:顯示本次 API 請求的端到端響應耗時,供您評估 API 的效能表現。如果響應延遲較大,需要考慮最佳化查詢邏輯或資料來源配置。
如果測試失敗,請仔細查看返回的錯誤提示資訊,根據提示進行相應修改後重新測試。
測試發行的 API
測試發行的 API 是指在服務管理頁面(即生產環境)中進行測試,目的是驗證 API 發布後的實際運行狀態。進行此測試前,您需要先完成 API 的發佈動作。
操作步驟:
在資料服務頁面,單擊頂部導覽列的服務管理。
在左側導覽列中,單擊API測試。
從下拉式清單中選擇需要測試的 API,確認 API 的請求參數值已配置完整。
單擊開始測試,在右側查看請求詳情和返回內容。
注意事項:
API測試頁面僅提供 API 線上測試功能,不支援通過該頁面更新 API 的正常返回樣本。
如果 API 配置了返回結果分頁展示,返回資料是否有序取決於底層資料來源的行為。若需要排序,可在嚮導模式下為 API 配置排序欄位,或在指令碼模式下為 SQL 代碼添加
ORDER BY子句。
測試結果的解讀與最佳化建議
一次完整的 API 測試結果由三部分構成,理解各部分含義有助於快速定位問題:
結果項 | 含義 | 關注要點 |
請求詳情 | 本次調用構造的完整 HTTP 要求。 | 確認 URL 路徑、參數傳遞方式是否正確。 |
返回內容 | API 返回的 JSON 響應體。 | 檢查資料欄位、資料量、錯誤碼是否符合預期。 |
響應時長 | 從發起請求到收到響應的總耗時。 | 若延遲過高,考慮最佳化 SQL、添加索引或使用加速服務。 |
當測試結果完全符合預期後,即可進入下一階段——將 API 發布至 API Gateway。
發布 API
完成 API 測試後,您可以將 API 發布至 API Gateway進行託管。API Gateway提供 API 的發布、管理、營運、售賣的全生命週期管理能力,並圍繞 API 提供許可權管理、流量控制、存取控制等服務。發佈動作的本質是將 API 部署至 API Gateway,自動產生線上調用地址。
準備工作
在發布 API 之前,請確保滿足以下條件:
API Gateway已開通:請前往 API Gateway控制台開通服務。
重要由於 DataWorks 與 API Gateway的網路架構限制,購買 API Gateway執行個體時,實例類型目前僅支援傳統專享執行個體,VPC 融合執行個體暫不支援。
API 分組已建立:API 發布時會根據其所屬商務程序的關聯分組,將 API 部署到 API Gateway中的對應分組。請確保商務程序已正確關聯 API Gateway分組(可通過右鍵業務流程>修改屬性查看具體的分組名稱)。
發布流程
API 的發布遵循提交 → 審批 → 發布的三步流程:
第一步:提交 API
進入資料服務頁面,在服務開發頁面的 API 列表中,雙擊要發布的 API 名稱,進入 API 編輯頁面。
單擊右上方的提交按鈕。
提交成功後,系統會自動產生一個 API 版本(如 V1、V2 等),您可以在右側彈出的版本面板中查看該版本的狀態資訊。
第二步:申請發布並等待審批
在右側的版本面板中,找到待發布的 API 版本,單擊發布按鈕。
根據介面提示,輸入申請原因並單擊申請權限,提交發布申請。
如果工作空間配置了審批次程序,發布請求需要經過核准中心的審核。審批人可在審批中心>待我審批頁面查看申請詳情並進行審批。
審批通過後,API 在版本面板中的狀態會從待申請變為可發布。
如果工作空間未配置審批次程序,提交後可直接進入發布步驟,無需等待審批。詳情請參見核准中心概述。
第三步:執行發布
審批通過後,在 API 編輯頁面的右側導覽列中,單擊版本,找到狀態為可發布的 API 版本。
單擊發布按鈕,等待系統提示發布成功。
發布成功後,DataWorks 會根據 API 所屬商務程序的關聯分組,將 API 部署至 API Gateway中的對應分組。
發布後的驗證
發布完成後,您可以通過以下方式驗證和管理 API:
在 API Gateway中查看:登入API Gateway控制台,在中查看發行的 API 資訊,並可配置流量控制、存取控制等策略。
應用調用:如果 API 供自己的應用程式調用,需要在 API Gateway中建立應用,將 API 授權到應用中,然後通過 AppKey 和 AppSecret 進行加密簽名調用。API Gateway還提供了主流程式設計語言的 SDK,可快速整合 API 至您的應用中。詳情請參見用戶端調用API樣本;SDK 整合請參見SDK下載及使用指南。
協議變更:對發行的 API,在服務管理>發佈的API頁簽下,單擊對應 API 的更多>協定變更,修改 API 的訪問協議(如從 HTTP 變更為 HTTPS)。協議變更即時生效,但如果刪除了原有協議,原協議的介面調用將會失敗,請謹慎操作。
上架至阿里雲 API 市場(可選)
阿里雲 API 市場涵蓋多類目,可協助實現資料變現。
資料服務產生和註冊的 API 發布至 API Gateway後,可以一鍵上架至阿里雲 API 市場售賣,協助企業快速實現資料價值變現,形成商業閉環。
前置要求:
僅支援企業身份入駐阿里雲 API 市場。
上架前需以服務商身份入駐阿里雲雲市場。流程詳見雲市場入駐流程。
操作步驟:
進入阿里雲服務商平台。
在左側導覽列,單擊。
單擊發布商品。
在接入資訊頁面,按照指引配置各項參數(包括商品名稱、定價策略、API 綁定等),完成 API 的上架流程。
版本管理
資料服務為 API 提供了完整的版本管理能力。每提交並發布一次 API,系統都會自動產生一條版本記錄。您可以隨時查看歷史版本、對比不同版本之間的差異,或將 API 復原至某個歷史版本。
使用雲原生API Gateway時,同一個 API 支援發布到多個不同的網關執行個體。版本面板中可能同時存在多條發布狀態的記錄,分別對應不同的網關執行個體。同一網關執行個體內,發布新版本後舊版本自動下線。
查看版本歷史
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,在下拉框中選擇對應工作空間後單擊進入資料服務。
在服務開發頁面的 API 列表中,雙擊要查看的 API 名稱,進入 API 編輯頁面。
單擊頁面右側的版本按鈕,開啟版本面板查看版本資訊、版本詳情等。版本面板中展示了當前 API 的所有歷史版本資訊,包括:
說明每個版本的操作列中提供API詳情連結,單擊可查看該版本的完整配置資訊,包括請求參數、返回參數、資料來源配置等詳細內容。
欄位
說明
API ID
當前 API 的唯一識別碼。
版本
版本號碼,按提交順序遞增(V1、V2、V3……)。
提交人
提交該版本的操作人員。
提交日期
該版本的發布時間,精確至秒。
狀態
發布(當前線上生效的最新版本)
可發布(通過測試並提交的版本)
離線(歷史舊版本)
版本對比
當 API 經過多次迭代修改後,您可能需要對比不同版本之間的差異,以便瞭解具體的變更內容。
操作步驟:
在版本面板中,勾選任意兩個需要對比的版本。
單擊面板底部的對比按鈕。
在彈出的歷史版本對比對話方塊中,查看兩個版本之間的差異。
對比內容說明:
嚮導模式 API:對比展示請求參數和返回參數的差異,包括參數名稱、類型、是否必填等屬性的變化。
指令碼模式 API:對比展示 SQL 指令碼的文本差異,以高亮方式標註新增、刪除和修改的程式碼。
版本對比功能特別適合在團隊協作情境中使用,協助審核人員快速理解每次變更的具體內容。
版本復原
當新版本出現異常或不符合預期時,您可以將 API 快速復原至之前的某個穩定版本。
操作步驟:
在版本面板中,找到目標歷史版本。
單擊該版本操作列中的復原按鈕。
在彈出的確定要復原目前的版本對話方塊中,單擊確認。
復原完成後,API 的配置將恢複為所選歷史版本的內容,當前線上版本隨即更新。建議在復原操作前,先使用版本對比功能確認目標版本的配置內容,避免誤操作。
下線 API
當某個 API 不再需要對外提供服務時,您可以將其從 API Gateway中下線。下線操作會使該 API 的線上調用地址失效,所有調用方將無法繼續訪問。
操作步驟
在資料服務頁面,單擊頂部導覽列的服務管理,預設進入API 管理頁面。
在發佈的API頁簽下,找到需要下線的 API。
單擊對應 API 操作列中的下線按鈕。
在彈出的下線API服務對話方塊中,單擊確認。
下線成功後,該 API 將從 API Gateway中移除,不再接受外部調用。
下線影響
下線 API 是一個具有較大影響範圍的操作,在執行前請充分評估:
授權失效:如果已授權的 API 被下線,則所有獲得授權的工作空間將無法繼續調用該 API。已授權關係在下線後自動失效。
重新授權:如果下線的 API 經修改後重新發布,API 負責人需要對新版本重新進行授權操作,此前的授權不會自動回復。
刪除限制:資料服務僅支援刪除非上線狀態的 API。如需徹底刪除一個發行的 API,必須先完成下線操作。
在下線 API 前,建議先通知所有已知的 API 呼叫方,並預留合理的遷移時間視窗,確保業務平穩過渡。對於已上架至阿里雲 API 市場的 API,還需先在市場中完成下架操作。
最佳實務與建議
版本管理原則
良好的版本管理習慣能夠顯著降低線上事故的風險:
變更記錄:每次提交時,在提交說明中清晰描述本次修改的內容和原因,方便團隊成員通過版本對比瞭解變更上下文。
灰階驗證:對於重大變更,建議先在測試環境充分驗證,確認無誤後再發布至生產環境。
快速復原:線上發現異常時,優先使用版本復原功能恢複服務,再排查問題根因。版本復原比修改後重新發布更快,能夠最大限度減少業務影響。
定期清理:對於長期未使用的 API,建議及時下線並清理,減少管理複雜度和潛在的安全風險。
測試與發布的協作流程
在團隊協作情境中,推薦以下工作流程:
開發人員在服務開發頁面完成 API 的建立和配置。
開發人員在開發環境中執行測試,確認功能正確。
開發人員提交 API,產生新版本並發起發布申請。
審批人在核准中心審核發布申請,可通過版本對比功能查看變更內容。
審批通過後,開發人員執行最終發佈動作。
營運人員在服務管理頁面對發行 API 進行線上測試和監控。
如發現問題,通過版本復原快速恢複,或下線 API 進行修複。
通過遵循這一流程,團隊可以在保證發布品質的同時,實現高效的 API 全生命週期管理。
返回樣本的限制
API 編輯頁面支援設定正常返回樣本,用於在 API 文檔中展示預期的返回資料結構。需要注意以下限制:
不自動同步:API 測試頁面的返回結果不會自動更新為 API 的正常返回樣本。您需要在 API 編輯頁面手動編輯或粘貼返回樣本。
大小限制:正常返回樣本的內容有最大字元數限制。如果樣本資料過大(例如包含上百條記錄),可能儲存失敗。建議僅保留 2~3 條典型記錄作為樣本。
發布後生效:修改正常返回樣本後,需要重新提交並發布 API 才會在 API Gateway文檔中生效。
資料來源表結構變更後的處理
當 API 關聯的資料來源表結構發生變更(如新增欄位、刪除欄位、修改欄位類型)時,發行的 API 不會自動感知這些變更。如果不處理,可能導致以下問題:
變更類型 | 影響 | 處理方式 |
新增欄位 | API 返回結果中不包含新欄位 | 在 API 編輯頁面添加新的返回參數,重新發布 |
刪除欄位 | API 呼叫報錯(欄位不存在) | 在 API 編輯頁面移除已刪除的返回參數,重新發布 |
修改欄位類型 | 可能導致類型轉換錯誤或資料格式異常 | 在 API 編輯頁面更新參數類型,重新發布 |
表名變更 | API 呼叫報錯(表不存在) | 修改 API 的 SQL 或嚮導模式中的表配置,重新發布 |
操作步驟:
進入 API 編輯頁面,根據表結構變更修改 API 配置。
嚮導模式:重新選擇表,系統會自動重新整理欄位列表。
指令碼模式:手動修改 SQL 陳述式中的欄位名或表名。
儲存配置後,重新執行測實驗證。
提交並重新發布 API。
嚮導模式的 API 在複製後,如果原始 API 關聯的表結構發生了變更,複製的 API 可能仍然使用舊的表結構資訊。建議複製後重新進入嚮導模式重新整理欄位配置。