聲明
- 本文的內容僅限於技術探討,不能作爲指導生產環境的素材;
- 鼓勵讀者購買紅帽培訓獲得更多系統性的培訓。
- 由於篇幅有限,文章中的步驟僅展現了關鍵的部分。
本文實驗內容展現:
- 使用Swagger文檔創建到外部REST服務的API客戶端連接器.
- 使用Fuse Online,使用此新的API客戶端連接器和PostgresDB連接器創建集成。
- 使用數據映射器步驟映射PostgresDB架構和外部REST服務架構之間的字段。
CoolWater Inc.是一家當地的自來水公司,客戶需要實施支付管理系統,目的是爲客戶提供便捷的在線水費支付界面。
集成的設計涉及從PostgreSQL數據庫中的To Do Web應用程序捕獲輸入,然後啓動與Web服務的REST API連接,該服務在CoolWater Inc.的客戶計費門戶上顯示水費支付詳細信息。在此實驗中, 我們實施此客戶端用例,支持CoolWater Inc.客戶的定期計費。
如下圖,我們在頁面(todo-)輸入繳費信息,自來水公司計費系統後臺可以顯示計費的信息。
默認情況下,todo-內容是空的:
我們使用REST API公開的CoolWater Inc.客戶計費門戶。
查看自來水公司計費門戶,沒有繳費信息,空的。
步驟1:使用現有的Swagger文檔創建API客戶端連接器。
Swagger文檔是一個JSON對象,在開發時考慮了OpenAPI規範。 它既可以作爲RESTful服務的基於標準的界面,也可以作爲文檔。 使用Swagger接口,需要生成最小的實現邏輯才能連接到RESTful服務。 這種易用性促使Swagger在應用程序開發項目中得到迅速採用。
在Fuse Online控制檯的左側面板中,選擇自定義:
在“API客戶端連接器”屏幕上,單擊“創建API連接器”
將出現“上載Swagger規範”屏幕。 您可以選擇通過文件上載工具上載Swagger文檔,也可以訪問託管的Swagger文檔。
選擇“使用URL”單選按鈕。
輸入客戶計費門戶REST服務的Swagger文檔的位置:
我們現在已使用Swagger文檔爲RESTful服務創建了API客戶端連接器。
步驟2: 創建Pay Water Bill API連接
在本節中,您將使用Pay Water Bill API客戶端連接器創建連接。 這樣可以訪問客戶計費門戶的託管RESTful服務。
在Fuse Online控制檯的左側面板中,選擇Connections:
PayBill連接現在可以作爲集成的一部分使用。 以相同的方式,您可以創建各種連接並在Connections屏幕上訪問它們。
步驟3:創建集成
創建PostgresDB連接(PostgreSQL數據庫)和PayBill連接(客戶計費門戶REST服務)之間的集成。
步驟4: 添加數據映射步驟
在左側面板中,將鼠標懸停在PERIODIC SQL INVOCATION連接和PAYMENT連接之間的images / add_filter_icon.png圖標上,然後選擇添加步驟:
在出現的Configure Mapper屏幕上,Sources面板顯示待辦事宜應用程序輸出中的字段,而Target面板顯示CoolWater REST API服務的字段。
步驟5:測試集成
訪問待辦事宜應用程序(tudo-)。
在表單中,輸入recurring davidwei 200:
查看postgres數據庫,todo輸入的信息已經存到數據庫中:
再次查看自來水公司的賬單系統,已經顯示davidwei付款信息-200美元。
上圖說明:數據庫Postgres與自來水公司計費系統Restful API的對接已經成功。
最後,我們看一下Fuse的API Connector類型和API安全實現方式。
Fuse的API Connector:
- Super-connector
- SaaS, cloud, custom APIs
- Resource operations (Swagger) map to connector actions
API的安全
- Swagger v. 2
- OAuth 2.0
- Override Swagger defaults
魏新宇
- "大魏分享"運營者、紅帽資深解決方案架構師
- 專注開源雲計算、容器及自動化運維在金融行業的推廣
- 擁有MBA、ITIL V3、Cobit5、C-STAR、TOGAF9.1(鑑定級)等管理認證。
- 擁有紅帽RHCE/RHCA、VMware VCP-DCV、VCP-DT、VCP-Network、VCP-Cloud、AIX、HPUX等技術認證