1. 概述
在完成開放平台API、應用和權限配置後,就可以呼叫APIAPI,實現相應的功能。
本文檔將提供多種呼叫範例Demo,幫助大家理解開放平台的使用。
注:本文檔的範例,均直接呼叫基礎資料API下的內建服務(名稱中有【demo】的5個服務),在決策系統重啟後,使用者已配置好的資料,會重置為預設資料。建議使用者在實際使用中,不在基礎資料API中,直接進行配置呼叫;而是透過新增API,選擇上述資料服務API的方式使用,可以避免上述問題。
2. SQL資料服務
本Demo範例展示:如何將SQL轉換成資料服務向第三方提供使用的場景
需用到的APIAPI實體是:[demo]Sql資料服務
2.1 API管理
在API管理的基礎資料API中,點選[demo]Sql資料服務的編輯按鈕,如下圖所示:
在基礎頁面,資訊已預設配置好,無需任何操作。
此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫。
在配置頁面,有2個配置項,分別為:
connection:SQL運作的資料源連結名稱(比如FRDemo之類的)
sql:資料來源的SQL
在這個範例中,我們的配置為:
connection = FRDemoTW
sql = SELECT * FROM `銷量` where 地區 = '華東'
2.2 應用管理
建立應用,命名為為“測試”。記下應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權。
2.3 權限管理
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]Sql資料服務的權限。以保證該API可用
2.4 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/sql/data
其中http://localhost:8075/webroot/decision/sp/client/api/為固定連結部分,sql/data和GET分別為API路徑和API方法;
將應用ID和金鑰寫入Headers中,最後呼叫API,得到的結果如下圖所示:
注意: clientId參數應改為 client_id
3. 報表資料集服務
本Demo範例展示:如何將已經做好的範本內的資料集資料,向第三方進行提供
需用到的API實體是:[demo]報表資料集服務
3.1 配置程式
參考2.1、2.2節,SQL資料服務的配置程式
API管理:
1)在API管理的基礎資料API中,點選[demo]報表資料集服務的編輯按鈕,進行API資訊的配置
2)在基礎頁面,資訊已預設配置好,無需任何操作;此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫
3)在配置頁面,有2個配置項,分別為:
report:資料集的來源(相對於reportlets)
dsName:資料集的名稱
在這個範例中,我們的配置為:
report= GettingStarterTW.cpt
dsName = ds1
應用管理:
在應用管理中,記下“測試”應用的應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權
權限管理:
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]報表資料集服務。以保證該API可用
3.2 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/ds/data。
ds/data和GET分別為API路徑和API方法;將應用ID和金鑰寫入Headers中。
這裏有兩種傳參方式可用,一種是在Body中寫入地區資訊:{“地區”:“華北”}
另一種是在Params中,將地區和華北,分別寫入KEY和VALUE下。此時在連結後綴,增加參數值?地區=華北
兩種方式得到的結果一致,如下圖所示:
4. 報表資料服務
本Demo範例展示:對於一些無法透過單個資料集簡單取出的資料,可以透過製作成簡單的報表的形式,匯出資料服務
需用到的API實體是:[demo]報表資料服務
4.1 配置程式
參考2.1、2.2節,SQL資料服務的配置程式
API管理:
1)在API管理的基礎資料API中,點選[demo]報表資料服務的編輯按鈕,進行API資訊的配置
2)在基礎頁面,資訊已預設配置好,無需任何操作;此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫
3)在配置頁面,有2個配置項,分別為:
report:資料來源的報表路徑(相對於reportlets)
tag:資料來源的sheet名
在這個範例中,我們的配置為:
report =開放平台測試.cpt
tag =sheet1
範本下載:
注1:本範本的資料來自FRdemo資料庫,您可以自行下載後,直接使用。
注2:本API不適用於複雜或大數據量範本。
應用管理:
在應用管理中,記下“測試”應用的應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權
權限管理:
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]報表資料服務。以保證該API可用
4.2 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/list/report/data。
list/report/data和GET分別為API路徑和API方法;將 client_id (應用ID) 和secret (金鑰) 寫入Headers中。
5. 報表分組資料服務
本Demo範例展示:對於一些無法用單個資料集簡單取出的資料,可以透過製作成簡單的報表的形式,匯出資料服務
需用到的API實體是:[demo]報表分組資料服務
5.1 配置程式
參考2.1、2.2節,SQL資料服務的配置程式
API管理:
1)在API管理的基礎資料API中,點選[demo]報表分組資料服務的編輯按鈕,進行API資訊的配置
2)在基礎頁面,資訊已預設配置好,無需任何操作;此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫
3)在配置頁面,有2個配置項,分別為:
report:資料來源的報表路徑(相對於reportlets)
tag:資料來源的sheet名
在這個範例中,我們的配置為:
report = 開放平台測試.cpt
tag =sheet1
注1:開放平台測試範本,與範例4相同
注2:與報表資料服務相同,本API不適用於複雜或大數據量範本。
應用管理:
在應用管理中,記下“測試”應用的應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權
權限管理:
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]報表分組資料服務。以保證該API可用
5.2 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/group/report/data。
group/report/data和GET分別為API路徑和API方法;將client_id (應用ID) 和secret (金鑰) 寫入Headers中。
從測試效果圖可以看出,本API與報表資料服務API,匯出的資料內容一致,只是在格式上有所不同。
本API匯出的資料將報表內容,分為了“title”和“items”兩部分。使用者可根據自身需求,選用不同的API。
6. 填報服務
本Demo範例展示:免預覽提交資料,提升填報效率
需用到的API實體是:[demo]填報服務
範例一:單行資料填報
6.1.1 配置程式
參考2.1、2.2節,SQL資料服務的配置程式
API管理:
1)在API管理的基礎資料API中,點選[demo]填報服務的編輯按鈕,進行API資訊的配置
2)在基礎頁面,資訊已預設配置好,無需任何操作;此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫
3)在配置頁面,有1個配置項,
report:資料來源的報表路徑(相對於reportlets)
在這個範例中,我們的配置為:
report = 填報範例(單行).cpt
範本下載:
範本中寫入a、b、c、d4個參數
應用管理:
在應用管理中,記下“測試”應用的應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權
權限管理:
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]填報服務。以保證該API可用
6.1.2 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/write/report/data。
group/report/data和GET分別為API路徑和API方法;將應用ID和金鑰寫入Headers中。
在Params中,給a、b、c、d4個參數指派。
可以看到資料表中增加了1條填報的資料
範例二:多行資料填報
本範例配合資料工廠資料集插件進行展示,資料工廠資料集插件見:資料工廠資料集
資料工廠資料集插件的作用:可以按照要求的格式寫入資料,一次性填報大量內容;減少傳統的在前端頁面表格中,逐行進行填報的工作量
6.2.1 配置程式
參考2.1、2.2節,SQL資料服務的配置程式
API管理:
1)在API管理的基礎資料API中,點選[demo]填報服務的編輯按鈕,進行API資訊的配置
2)在基礎頁面,資訊已預設配置好,無需任何操作;此處只需記下API路徑和API方法兩個參數,用於後續步驟中,API呼叫時的連結填寫
3)在配置頁面,有1個配置項,
report:資料來源的報表路徑(相對於reportlets)
在這個範例中,我們的配置為:
report = 填報範例.cpt
範本下載:
應用管理:
在應用管理中,記下“測試”應用的應用ID和金鑰兩個參數,用於後續步驟中,API呼叫時的鑑權
權限管理:
在權限管理中,選定應用為“測試”;開啟基礎資料API分組中,[demo]填報服務。以保證該API可用
6.2.2 效果預覽
連結為:http://localhost:8075/webroot/decision/sp/client/api/write/report/data。
group/report/data和GET分別為API路徑和API方法;將應用ID和金鑰寫入Headers中。
在Body中按格式要求,寫入需要填報的內容。
可以看到資料表中增加了2條填報的資料
本範例中資料工廠配置的資訊如下圖:
其中,裝載方式為單參數,參數填寫為${body},右側參數body自動填充。此處對應postman中的請求體Body,即傳入的參數為body;
參數值按照資料庫表中的格式填寫即可,在postman的請求體Body中,寫入的需要填報的內容,也遵循該格式;
解析方式為json,即將需要填報的內容,透過資料工廠,轉化成json格式。此處可根據實際需求,選擇對應的解析方式。