輕易雲用友NCC產品API集成專題
open api簡介
Open API即開放API,也稱開放平台。 所謂的開放API(OpenAPI)是服務型網站常見的一種應用,網站的服務商將自己的網站服務封裝成一系列API(Application Programming Interface,應用編程接口)開放出去,供第三方開發者使用,這種行為就叫做開放網站的API,所開放的API就被稱作OpenAPI(開放API)。
就現在互聯網上Open API的形態來看,主要分成兩種:標准REST和類REST(也可以叫做RPC形態)。
REST形態主要有這么幾點特點:
- 1.服務地址就是資源定位地址。
- 2.服務操作就是Http請求中的方法類型(GET,POST,DELETE,PUT),這其實是抽象現實當中對於服務的增刪改查操作。
UAP實現open api
Restlet項目為“建立REST概念與Java類之間的映射”提供了一個輕量級而全面的框架。
UAP在Restlet框架之上,選擇了官方JAX-RS擴展,並且在擴展的基礎上與NC進行了集成。
主要jar包 modules/uapws/pubuapfw_restframeworkLevel-1.jar
NC使用Restlet框架需要修改nchome/hotwebs/nccloud/WEB-INF/web.xml文件。增加以下兩個配置
業務組open api開發步驟
資源創建完成之后即可進入輕易雲系統數據集成平台添加對應的專屬連接器進行系統對接。
- 資源注冊
和upm文件類似,創建的資源需要在配置文件中進行注冊。注冊方式:在META-INF下創建.rest文件,將創建的資源全限定類名注冊到.rest文件中。
注:和upm文件一樣,此文件在運行時必須包含在nchome/modules/XX/META-INF下
3.編寫md文檔(api使用說明)
-
在hotwebs文件夾下按照nccloud/resources/api/modules/模塊/組件/幫助文檔.md的目錄結構創建幫助文檔文件
-
在注冊openpi的時候,需要填寫訪問路徑和文檔路徑,文檔路徑需要從模塊開始具體到md文件,例如:樣例中的文檔路徑應該填寫為 /aim/equip/equip.md
4.預制api腳本
1.在環境路徑 http://ip:port/nccloud/resources/opm路徑下注冊api相關信息,包括:api所屬模塊,api所屬實體,api訪問路徑,api幫助文檔路徑等。(具體操作和規范參見openapi配置中心使用文檔)
2.將注冊的api腳本抽取出來作為預制腳本提交到盤里(注意腳本中的訪問路徑要和md文檔中的訪問路徑一致;腳本中api幫助文檔地址要和第三步文檔路徑一直)
open api 開發規范
-
資源包命名規范:ncc.openapi.模塊.業務組件.業務操作
示例:ncc.openapi.aum.borrow.apply(借用申請)
2.資源類命名規范:業務組件+業務操作+Resources(駝峰命名)
示例:BorrowApplyResources
3.uri定義:nccloud/api/模塊/業務組件/業務操作/動詞
(增:add;刪除:delete;查詢:query;修改:update (其他業務動詞自定義))
示例:http://ip:port/nccloud/api/aum/borrow/apply/query(查詢借用申請) -
md文檔語法規范:(md文檔的名稱不要重復)
a. 文檔名稱用一號字【#】,一級目錄用二號字【##】,三級目錄使用三號字【###】以此類推。
b. 請求地址前加【>】地址內容必須和注冊的api腳本訪問路徑一致。格式:http://ip:port/apiUrl.(如:http://ip:port/nccloud/api/fip/service/add)
c. 表格的格式:表頭內容必須用【|】包起來,第二行必須跟上【|---|---|---|】表頭有幾列加幾個。
d. 請求參數和返回值參數的寫法:如果是主子表格式的,在3.3中描述參數分類,如:head,body。分別在3.3.1和3.3.2中描述head和body的內容。如下圖
e.json示例:json示例以【請求參數json示例】和【返回值json示例】命名。用【```】包起來,內容必須是標准json格式的數據。
Openapi測試
Openapi測試參見openapi使用文檔。通過輕易雲的系統數據集成策略也可以進行在線的用友NCC API調用