1. 概述
1.1 版本
FineDataLink版本 | 功能變動 |
---|---|
4.0.20.1 | - |
4.0.28 | 資料服務支援應用管理功能,支援以應用的方式分組管理API呼叫方: 支援對「應用」的基礎管理功能(建立、編輯、刪除、管理權限配置) 支援對「應用」配置鑑權 支援為「應用」授權指定API的存取、指定授權有效期、指定授權呼叫頻率 |
4.0.29 | 支援基於AK/SK認證邏輯的摘要簽章認證方式 |
4.1 | 支援發佈API時直接綁定應用 |
4.1.6.4 | 可在應用中匯出 API 說明文檔 |
4.2.4.3 | 更新增立應用交互 |
1.2 應用場景
1)使用者希望能對多個 API 進行分組管控,在相同分組中,能統一設定認證方式、存取頻率、授權有效期。
2)維運 API 時,能透過分組維度,查看該分組下 API 資訊、呼叫記錄。
1.3 功能簡介
1)FineDataLink 支援在建立 API 時和建立後綁定其至對應的應用中,可在應用中為多個 API 統一設定認證方式、存取頻率、授權有效期。如下圖所示:
設定認證方式可保證發佈的 API API在被外部系統呼叫時更安全。
2)多個 API 綁定相同應用,相當於讓多個 API 擁有了被存取的統一父路徑。
資料服務發佈的 API 存取地址為:FDL伺服器地址+/service/publish/應用ID+APIPath
API 地址範例:https://demo.finedatalink.com/service/publish/673d189b-ce05-4029-912a-2e68a72da6c3/wendang
應用ID | APIPath |
---|---|
每個應用有唯一的 ID(AppId,用於唯一標識應用)和認證資訊(AppCode 認證碼) | ![]() |
3)應用與 API 是多對多的對應關係,同一個 API 可以存在於多個應用中;同一個應用中也可以有多個 API。
4)API 的上下線狀態與綁定狀態互不影響,如果應用綁定了一個下線的 API,呼叫該 API 時,會提示 API 未上線。
2. 使用者需知
1)由於當前發佈 API 的 Token-APPCode 是直接在請求中傳遞的,為增強安全性,建議使用者使用 HTTPS 部署 FineDataLink。
非超級管理者使用者想要使用該功能需要為使用者分配 数据服务API管理权限、資料服務應用管理權限
2)資料服務發佈的 API 若想被呼叫成功,必須綁定應用。綁定應用方式:
方式一:參考本文內容,建立應用/修改應用,綁定已設定好的 API 。
方式二:資料服務中建立 API 時,在 API資訊 步驟中,綁定已有應用。
3. 建立應用、綁定API
3.1 建立應用
點選「資料服務>應用列表」,選中某個資料夾,建立應用。如下圖所示:
3.2 設定應用
可設定應用名稱、應用描述、應用認證方式。如下圖所示:
3.2.1 應用ID、應用名稱、應用描述
應用ID:建立應用時,提示應用ID將在應用儲存後自動生成;修改應用時,可以查看當前生效的應用ID。
應用名稱:定義應用名稱;必填,預設為空。
應用描述:定義應用的詳細描述,可為空、
3.2.2 應用認證方式
支援三種認證方式:無認證、AppCode、摘要籤名。
注:若在應用中設定了應用認證方式 ,則應用下的所有 API 都需要使用該鑑權方式。
無認證:
呼叫 API 時不需要傳入認證資訊。
AppCode:
1)選擇 AppCode 認證方式後,將展示 AppCode 值。
2)支援點選「重置」按鈕重置 AppCode,點選「重置」按鈕後,將自動檢查當前使用者是否有權管理應用下所有的 API ,如果無權限則報錯提示存在已綁定但是無權限的 API,需要有應用下所有 API 的權限才能重置 AppCode。
權限檢查成功後,提示 AppCode 將在應用儲存後重新生成,儲存後生效,編輯頁面未儲存則不做重置。
3)呼叫 API 時:
需要在請求頭中指定 Authorization 請求頭的值為:AppCode + 空格 + APPCode值。
AppCode 值範例:AppCode 35f3c79e-08e2-4f6f-8eed-60f40f5ca4db
範例參考:
使用数据服务发布的API(POST application/json请求)
使用数据服务发布的API(POST x-www-form-urlencoded请求)
摘要簽章:
當應用認證配置為「摘要簽章」時,下方會顯示 AppSecret ,摘要簽章認證方式說明詳情參見:摘要簽章認證方式
3.2.3 綁定 API
使用者只能查看、綁定、管理自己有權限的 API。
資料服務發佈的 API 若想呼叫成功,必須綁定應用。
應用與 API 是多對多的對應關係,同一個 API 可以存在於多個應用中;同一個應用中也可以有多個 API。
單個 API 修改授權有效期/存取頻率、解綁:
設定項 | 說明 |
---|---|
修改授權有效期 | 指定授權有效期步驟:
|
修改存取頻率 | 修改存取頻率步驟: 自訂頻率時,次數預設為 100,範圍為1~1000000,單位可選擇分鐘/小時/天 指定存取頻率後,若 API 存取頻率超限,API將傳回超限報錯提示 |
解綁 | 點選「解綁」按鈕,該 API 即可不綁定此應用 |
批量修改授權有效期/存取頻率、批量解綁:
勾選已綁定的 API,點選「批量設定」,可以對 API 的認證方式授權有效期進行設定,同時可設定 API 被存取的頻率,如下圖所示:
3.3 查看應用
應用設定完成儲存後,可以查看到當前應用的認證方式是否啟動、認證、應用ID、已經綁定的 API 等資訊。如下圖所示:
基本資訊說明:
專案 | 說明 |
---|---|
應用ID | 展示應用ID 應用ID是應用的唯一標記,用於和 API 路徑一同形成最終可被存取的 URL |
應用名稱 | 展示應用名稱 |
描述 | 展示應用的詳細描述 |
建立人 | 應用的建立人 |
建立時間 | 應用的建立時間 |
認證方式 | 展示認證方式
|
已綁定API | 展示應用下已綁定的 API 列表 包含 API 名稱、API 狀態、API 路徑、API 目錄、API 描述、API 授權有效期、API 存取頻率 支援直接複製 API 路徑 |
3.4 特殊情況說明
場景 | 說明 |
---|---|
使用者沒有應用權限,但有某個 API 管理權限 | 使用者可以正常編輯有權限的 API ,或者在有權限的資料夾下新增 API,但是無法將 API 綁定給無權限的應用 |
使用者沒有特定 API 管理權限,但是有特定應用管理權限 | 使用者可以正常編輯有權限的應用,或者在有權限的資料夾下新增應用,但是無法將應用與無權限的 API 綁定 |
平台內有 a,b,c,d 四個 API 和「應用1」一個應用 A 使用者擁有 a,b 兩個 API 的權限和應用1權限 B 使用者擁有 a,b,c 三個 API 的權限和應用1權限 管理者將 a,b,c,d 四個 API 綁定到了應用 1 | A在應用1中,可以看到和編輯a,b;可以編輯a,b的綁定情況;無法重置應用1的AppCode;無法刪除應用1 B在應用1中,可以看到和編輯a,b,c;可以編輯a,b,c的綁定情況;無法重置應用1的AppCode;無法刪除應用1 如果想要刪除應用1,需要有所有API的管理權限,再進行操作 如果想要重置應用1的AppCode,需要擁有應用下所有已綁定的API的管理權限 |
4. 管理應用
應用列表中僅展示當前使用者有管理權限的資料夾、應用。
1)應用可在資料夾中進行管理。如下圖所示:
2)可對應用做重新命名、行動、刪除操作。如下圖所示:
當應用綁定着當前使用者無管理權限的 API ,即使有應用管理權限,也不允許刪除應用,刪除時提示告知無法刪除。
當應用綁定的 API 當前使用者都有管理權限,且使用者有應用管理權限,允許其刪除應用。
3)支援編輯應用。如下圖所示:
進入應用編輯頁面,點選左上角「編輯」按鈕可修改應用的名稱和描述。如下圖所示:
5. 匯出 API 文檔
4.1.6.4 及之後版本,支援匯出 API 文檔。
5.1 應用場景
API 開發完成後,需要將 API 說明文檔提供給呼叫者,供呼叫者查看。
5.2 功能說明
如果使用者有該應用的管理權限,可以點選「匯出API文檔」按鈕,匯出該應用下所有上線API的說明文檔,文檔格式為 Word 。如下圖所示:
線上文檔包含的內容如下:
展示項 | 說明 |
---|---|
目錄樹 | 展示目錄結構 |
應用資訊 | 表格形式展示應用資訊:
|
API資訊 | 展示該應用下所有上線API的資訊
|
錯誤碼匯總 | 錯誤碼資訊 錯誤傳回內容 |