一个自来水公司的业务集成-数据库与Restful API的对接:构建以API为中心的敏捷集成系列-第三篇

声明

  • 本文的内容仅限于技术探讨,不能作为指导生产环境的素材;
  • 鼓励读者购买红帽培训获得更多系统性的培训。
  • 由于篇幅有限,文章中的步骤仅展现了关键的部分。

本文实验内容展现:

  • 使用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等技术认证

原文发布于微信公众号 - 大魏分享(david-share)

原文发表时间:2018-11-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏葡萄城控件技术团队

API测试工具SoapUI & Postman对比分析

最近公司要引入API测试工具,经过调查和了解,最终决定在SoapUI 和 Postman两种工具之间做一个选择,两种工具在业界都很有名,相信很多人两种工具也都曾...

41820
来自专栏腾讯Bugly的专栏

【Dev Club 分享】安卓单元测试:What, Why and How

Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师。每周都会举行嘉宾分享,话题讨论等活动。 本期,我们邀请了蘑...

33860
来自专栏ImportSource

NoSQL 一致性[详解]更新一致性

翻译内容: NoSQL Distilled 第五章 Consistency 作者简介: ? 本节摘要: 一致性向来是分布式的一大问...

40970
来自专栏Debian社区

Linux Kernel 4.14 正式发布,驱动和性能改进

Linus Torvalds 宣布推出最新的 Linux Kernel 4.14 稳定版,并开始接受 4.15 合并请求。

15910
来自专栏跟着阿笨一起玩NET

《我的WCF之旅》博文系列汇总

WCF是构建和运行互联系统的一系列技术的总称,它是建立在Web Service架构上的一个全新的通信平台。你可以把它看成是.NET平台上的新一代的Web Ser...

6310
来自专栏Seebug漏洞平台

【BlackHat 2017 议题剖析】连接的力量:GitHub 企业版漏洞攻击链构造之旅

作者:Orange (orange@chroot.org ) 知道创宇404实验室 独家授权翻译 原文地址:http://blog.orange.tw/201...

415160
来自专栏FD的专栏

Effective Testing with RSpec 3 (第一部分:入门)

RSpec 3是一个高效的Ruby测试框架。 我们说生产效率很高,因为关于它的一切 - 它的样式,API,库和设置 - 都是为了在编写出色的软件时为你提供支持。

17630
来自专栏Java3y

从零开始写项目【总结】

从零开发项目概述 最近这一直在复习数据结构和算法,也就是前面发出去的排序算法八大基础排序总结,Java实现单向链表,栈和队列就是这么简单,十道简单算法题等等… ...

458100
来自专栏无题

各RDB与Nosql性能与特点总结

最近考虑到数据库包括各种缓存到底面对高并发情况性能到底是怎么样的,所以多方收集整理成此篇,以后也会持续更新。 mysql: 1.性能从10万条规模升到100万...

422110
来自专栏性能与架构

美国建站平台 Wix 的架构变迁

背景 Wix 是全世界最大的自助建站云平台,可以让每一个人通过拖拽等简单的方式轻松的创建一个漂亮的网站 这个平台上已经创建了6000万个网站,覆盖190个国家...

59640

扫码关注云+社区

领取腾讯云代金券