如何设计一个作为基于JSON的API公开的整合流程

第 2 部分展示了如何构建一个整合流程(orchestration),该整合流程可调用 ">Salesforce.com 公开的基于 JSON 的 REST API 来创建一个账户。第 3 部分展示如何设计一个作为基于 JSON 的 API 公开的整合流程。

WebSphere Cast Iron(后面简称为 Cast Iron)被广泛用于遍及内部和外部应用程序的集成和迁移。过去,JSON 被普遍用作 REST API 的传输类型,因为与 XML 相比,它的格式是轻量级的。

在 Cast Iron 中,您可以创建和公开一个基于 JSON 的 API,这是一个以 JSON 格式接受请求并发送响应的整合流程。Cast Iron 使用了 XML 和XML 模式。Cast Iron 引入了两个用来处理 JSON 数据的新活动:Read JSON 和 Write JSON。这些活动在整合流程的创建过程中非常有用,该整合流程代表 Cast Iron 中基于 JSON 的 API。本文将介绍如何创建一个作为 API 公开的整合流程,此 API 可接收和发出 JSON 数据。

构建一个基于 JSON 的 API 在 Cast Iron 中添加两个数字

在此场景中,您将学习如何公开一个 REST API,它通过使用 Read JSON 和 Write JSON 活动接收带有两个数字的请求,并在 JSON 消息中发送输入数字的总和作为响应。样例请求和响应 JSON 消息如表 1 所示。

表 1. 添加两个 API 样例请求和响应 JSON 消息数字。

请求 JSON 响应 JSON {

"number1":100"number2":120

} {

"result":220

}

您必须构建整合流程来完成上述场景。该整合流程充当了一个基于 JSON 的 REST API,以便将两个数字添加到外部世界,如图 1 所示。

图 1. 添加两个数字 - API 整合流程设计

图 1. 添加两个数字 - API 整合流程设计

Receive Input Numbers(Receive 请求)接收包含两个需要添加的数字的 JSON 请求。表 2 展示了完成 Receive Input Numbers 活动的检查清单的步骤。

表 2. Receive Input Numbers 活动

检查清单项 描述 Pick Endpoint 选择 HTTP 端点。 Configure 将输入 add 添加到 URL (路径在
主机名后)并选择 POST 作为 HTTP 方法。 Map Output 根据活动的输出参数创建一个新变量(主体)。该变量用于配置整合流程的其他活动。 Convert to XML 活动 (Read JSON) 将 JSON 格式
数据转换成 XML: 通过完成下列步骤来配置 Read JSON。您必须使用 JSON 消息来配置 JSON 活动。从 Configure 窗口中选择 Use JSON or XML Message 选项作为消息类型,如图 2 所示。

图 2. 配置 Convert to XML 活动

将请求 JSON 消息复制到文本区,如表 1 所示,然后单击 Generate Output Map。这会生成 Read JSON 输出参数,可在 Map Outputs 窗口查看这些参数,如图 3 所示。在图 3 中,对于给定的请求 JSON 消息,已经生成了各自的 XML 模式并根据 Map Output 进行填充,这使得数据(将要添加的)的映射和处理变得非常容易。

图 3. Convert to XML Activity Map Input


Checklist 面板中选择 Map Inputs。单击 Select Inputs 按钮,然后选择 body 作为输入变量,如图 4 所示。单击 Ok。

图 4. Convert to XML Map Input - 选择输入

在选择输入变量之后,将输入变量映射到 jsonText,如图 5 所示。

图 5. Convert to XML Map Inputs - 映射

时间: 2024-11-08 19:55:42

如何设计一个作为基于JSON的API公开的整合流程的相关文章

在WebSphere Cast Iron中使用JSON(三) 设计基于JSON的REST API

简介 WebSphere Cast Iron(后面简称为 Cast Iron)被广泛用于遍及内部和外部应用程序的集成和迁移.过去,JSON  被普遍用作 REST API 的传输类型,因为与 XML 相比,它的格式是轻量级的. 在 Cast Iron 中,您可以创建和公开一个基于 JSON 的 API,这是一个以 JSON 格式接受请求并发送响应的整合流程.Cast Iron 使用了 XML 和XML 模式.Cast Iron 引入了两个用来处理 JSON 数据的新活动:Read JSON 和

代码-java设计一个管理系统

问题描述 java设计一个管理系统 基于java设计一个学生成绩管理系统,要求有界面,且有增加,查询,修改,删除,退出功能,代码怎么写? 解决方案 这个在网上搜索一下就可以吧. 解决方案二: 界面的代码用easyUI可以自动生成,数据用SQL 解决方案三: 找个jservlet的资料看看你就知道怎么弄了

调用基于JSON的EST API来创建一个帐户

WebSphere Cast Iron(以下简称 Cast Iron)被广泛用于整个内部和外部应用程序的集成和迁移.过去,大多数基于 SaaS 的应用程序都公开了 REST API,这些 API 用于处理 JSON 数据.然而,Cast Iron 主要处理 XML 和 XML 模式.为了支持有效的 REST API 调用,Cast Iron 引入了两个新活动来处理 JSON 数据. 您可以在调用 REST API (大部分是 SaaS 供应商公开的)的过程中使用 Read JSON 和 Writ

配置JSON处理活动来调用基于JSON的REST API

JavaScript Object Notation (JSON) 是一个基于文本的开放标准,为了进行人类可读的数据交换而设计.JSON 源于 http://www.aliyun.com/zixun/aggregation/33906.html">JavaScript 脚本语言,用于表示简单的数据结构和被称为对象 的关联数组.过去,SaaS 应用程序绝大多数为企业客户所用.JSON 被认为是一个用于表示 HTTP 上的数据的有效且高效的方法.早些时候,几乎所有公开 Web 服务(以 SOA

在WebSphere Cast Iron中使用JSON(二) 调用基于JSON的REST API

简介 WebSphere Cast Iron(以下简称 Cast Iron)被广泛用于整个内部和外部应用程序的集成和迁移.过去,大多数基于 SaaS 的应用程序都公开了 REST API,这些 API 用于处理 JSON 数据.然而,Cast Iron 主要处理 XML 和 XML 模式.为了支持有效的 REST API 调用,Cast Iron 引入了两个新活动来处理 JSON 数据. 您可以在调用 REST API (大部分是 SaaS 供应商公开的)的过程中使用 Read JSON 和 W

基于情景的设计:设计一个像样的Scenario

文章描述:怎样设计一个像样的Scenario - Everett Mckay(前微软项目经理). 现在基于scenario的设计已经被广泛的应用到了各种产品设计中.大家发现,很多时候一个短小精悍的小故事往往比一大段枯燥的介绍更来的实在和有趣.但是在我的工作过程中,实在是见过不少非常糟糕的scenario,下面就是一个典型的例子: Joe在Fortune 500公司上班.他的工作常常需要他查询客户的Snarfbladt资料.他发现Bladtblaster 2000能够让他在bladtblaster

如何设计一个优秀的API(转载)

最近在整理框架的一些 API,觉得很有必要总结一下 API 兼容性的设计.下图是我自己当下的一些总结,慢慢维护: 网上搜索了一下,一个多月前,"标点符"已经发布了下面这篇文章,觉得写得非常不错,转载于此:   --------------------------------------------原文如下:-------------------------------------------- 到目前为止,已经负责API接近两年了,这两年中发现现有的API存在的问题越来越多,但很多AP

硬件-怎样基于80c51单片机设计一个数字钟?

问题描述 怎样基于80c51单片机设计一个数字钟? 在6位数码管上显示当前时间.显示格式"时时分分秒秒": 利用按键对时间的时.分.秒进行设置: 利用按键对闹铃进行设置,并显示闹玲时间.当闹玲时间到蜂鸣器发出声响,按停止键使可使闹声停止. 实现秒表功能(最小单位为百分之一秒),具有开始.暂停.清零功能. 解决方案 从你这个描述懒看,功能都有了,你搭建个小电路就可以试一下了 . 有几个基础的一定要实现,百分之一秒的定时器,秒定时器. 有了这两个,把数码管的显示搞定,基本上就有个雏形了,接

.Net基于MVC4 Web Api输出Json格式实例_实用技巧

本文实例讲述了.Net基于MVC4 Web Api输出Json格式的方法,分享给大家供大家参考.具体实现方法如下: 1.Global 中增加json输出 复制代码 代码如下: GlobalConfiguration.Configuration.Formatters.JsonFormatter.MediaTypeMappings.Add(new QueryStringMapping("json", "true", "application/json"