Open Exchange 上有许多实用的项目,但很容易被忽略。如果你使用 InterSystems IRIS 进行开发,以下这 10 个项目值得收藏。

Open Exchange 上有许多实用的项目,但很容易被忽略。如果你使用 InterSystems IRIS 进行开发,以下这 10 个项目值得收藏。

在上一篇文章中,我们探讨了 IRIS 中单元测试的基础知识以及将其应用于 REST API 的方法。我们甚至还了解了如何在最终确定网络配置和身份验证之前测试逻辑,从而使我们能够专注于测试 API 内容。
今天,我们将在此基础上使用另一个工具来提升我们的单元测试策略:%Populate。
乍一看,%Populate类似乎非常简单。你可以创建一个同时扩展了 %Persistent和 %Populate的类,并继承一个用于生成随机记录的 方法。该工具可识别某些字段名称(如 "Name"、"SSN" 和 "Phone"),并应用专门的逻辑来确保数据的真实性。如果某个字段名称没有被识别为特殊字段名称,就会按照其指定的数据类型填充随机值。
假设我们开发了这样一个具有以下属性的类,用来跟踪商店中一些基本的客户信息(我们的类还扩展了 ,这在后面会派上用场):
Class User.CustomerList Extends (%Persistent, %Populate, %JSON.Adaptor)
{
Property Name As %String;
Property DOB As %Date;
Property Age As %Numeric(SCALE = 0);
Property IsMember As %Boolean;
Property MemberID As %String(POPSPEC = ".GenID()");
}
当将 IRIS For Health 从 2024.1 升级到 2024.2+(2025.1、2026.1 等)时,您可能会注意到,在以前访问 FHIR 门户的地方,现在会收到 "未找到 "的提示。

2024.2 之前:
截至 2024.2+:
这可能是因为它将进入 /csp/fhir-management,而不是之前的 /csp/healthshare。请参见此处的发布公告。
根据您的升级方式,配置可能是自动的,但如果您使用 IKO,请确保更新您的网络应用程序以包含 /csp/fhir-management:
webgateway:
replicas: 1
image: containers.intersystems.com/intersystems/webgateway:2026.1
applicationPaths:
#; All of the IRIS instance's system default applications.
#; For Management Portal only, just use '/csp/sys'.
#; To support other applications, please add them to this list.
- /csp/sys
- /csp/broker
- /api
- /isc
- /oauth2
- /ui
- /csp/healthshare
- /csp/fhir-management
如果您曾经在一个大型的IRIS命名空间中查找某个字符串、方法调用或模式的使用位置,您就会知道其中的痛苦:没有内置的方法可以在VS代码中对服务器端的ObjectScript代码进行grep式搜索--至少不需要跳过一些障碍。
这就是ObjectScript搜索要解决的问题。今天就从VS代码市场中简单安装一下试试吧。
如果不喜欢,卸载也很简单。但我认为你会喜欢它的--对于任何在 VS Code 中进行 ObjectScript 开发的人来说,它都是生活质量的巨大提升。
官方的 vscode-objectscript 扩展确实包含搜索功能。不过,要启用该功能,目前需要等待拟议中的 VS Code API 最终确定,或者手动安装扩展的自定义构建并启用拟议中的 VS Code API。这两种方法对于希望开箱即用的开发人员来说都不理想。
ObjectScript Search 是一个临时、独立的扩展,目前弥补了这一缺陷。它通过 InterSystems 活动栏中的专用面板提供全文服务器端搜索,无需特殊构建或拟议的 API。一旦官方扩展将搜索作为头等功能发布,该扩展将达到其目的,但在此之前,它在这里,它可以工作。
ObjectScript Search 的作用 ObjectScript Search 在 InterSystems 侧边栏中直接添加了搜索视图。
引言 - ObjectScript 中的人工智能流问题
今天,我想介绍一下我在将 AI API 集成到 ObjectScript 应用程序时遇到的一个问题以及找到的解决方案。我最初的测试很成功,但也有些令人沮丧。
HTTP 调用成功了;请求正确地发送到了我的 LLM API。但随后,沉默......漫长的等待。最终,整个响应以单个块的形式到达。
从技术上讲,它成功了,但与 ChatGPT 会话相比,用户体验令人失望。
现代模型设计为逐个令牌流式输出。这使得等待时间大大缩短,因为即使尚未生成完整的答案,您也可以开始读取响应。 要启用此行为,只 需向 API传递 stream=true。 不过,在这种看似简单的操作背后有一个重要的细节:流媒体依赖于服务器发送事件(Server-Sent Events,SSE)。
如果不支持客户端 SSE,就无法利用这种模式。
对于通常在 ObjectScript 中使用的 %Net.HttpRequest 类,响应会被缓冲,直到连接关闭。换句话说,没有增量读取,没有渐进标记,因此也就没有流。
如果我们希望将 LLM 集成到 IRIS 应用程序中,那么能够处理 文本/事件 流、即时解析事件和实时处理数据是至关重要的 。
我们一开始并没有大的人工智能战略。
我们有一个传统的 InterSystems Caché 2018 应用程序、大量老旧的业务逻辑和一个实际需求:构建一个新的用户界面并改进已运行多年的代码。起初,我认为人工智能编码代理只能帮助完成一小部分工作。也许是一些模板、系统周围的一些 REST 工作,以及帮助阅读旧的 ObjectScript。
但实际上,它的作用远不止这些。
当我们开始认真使用它时,我们意识到它可以跨越庞大的代码库,理解模式,提出重构建议,并帮助我们以比我预期快得多的速度实现 Caché 的现代化。但这只是在开始时经历了一段令人沮丧的时期之后才发生的。
真正的挑战不是获得代码建议。而是教会代理我们的 Caché 环境如何实际运行。
在进行任何技术工作之前,我们必须回答一个安全问题。
我们不能将企业资源规划代码和内部业务逻辑直接发送给公共人工智能服务,并寄希望于最好的结果。这样做永远无法通过严格的安全审查。
亚马逊 Bedrock 改变了我们的想法。我们的服务器、数据和开发环境已经在 AWS 中,因此 Bedrock 可以很自然地融入我们已经信任和管理的云环境。我们可以使用该模型,同时将流量、访问控制和周边安全控制保持在我们已经在使用的 AWS 框架内。
我们在将 IRIS 实例迁移到另一台机器(甚至可能是升级版本)后,有多少次是在几天之后才猛然惊觉:我们忘了迁移那个对于业务操作(Business Operations)至关重要的 SSL 配置?或者是漏掉了某个凭据(Credential),又或是某个包里孤零零的一个类?
最简单的法子就是列一张清单¹。把我们必须迁移的实体项都罗列出来。但是,Word 文档里的简易清单往往会被人抛诸脑后,甚至干脆被无视。
管理学的基本原理告诉我们:如果你希望人们遵循流程,你可以采取以下手段:
Python 脚本固然可行,但人们可能会忘记脚本放在哪儿,或者去哪儿下载。一旦有了新版本,所有使用者都得重新下载。
IRIS 类或任务似乎也是理想选择,直到你意识到有时你是迁移到另一个网络的服务器,一个实例根本无法访问另一个。
这就是为什么我选择了浏览器插件一旦安装,它便触手可及(哪怕你几个月不用它);更新会自动完成。即便你换了浏览器或出于某种原因弄丢了插件,从应用商店重新安装也只是点击一下的事。
在我年轻的时候(具体有多年轻不在本文讨论范围之内),"token"这个词意味着乐趣。你看,每年我都会有几次机会去街机厅,和朋友们一起玩一些有趣的电子游戏。
如今,token意味着安全。JSON 网络令牌(JWT)身份验证已成为确保 REST API 安全的最流行标准之一。幸运的是,对于 IRIS 用户来说,我们有一种直接的方法来设置应用程序,使其受到这种方式的保护。然而,这种想法仍与我以前玩街机时的想法相似。如果你想玩游戏,就需要获取一些token!
设置
我们的首要任务是为 IRIS 做好准备,使用户能够获取token。首先,我们要在全系统范围内允许使用 JWT 身份验证。为此,我们将打开系统管理门户并登录。然后,我们将进入System Administration > Security > System Security > Authentication\Web Session选项。在同一区域,我们还可以授权其他身份验证替代方案,如 LDAP 和双因素身份验证。在变体列表的底部附近,我们会发现一个名为 "JWT Issuer Field "的字段,在这里我们必须键入一些值来标识token发行者。它可以是任何唯一的字符串,但通常是一个 URL 或域。这应该由应用程序接口和前端开发人员事先商定。您可以选择用户访问 API 时发送请求的 URL。在我的示例中,我将选择 www.myurl.
供应链是指由公司业务领域及其供应商和合作伙伴(利益相关者)执行的一系列流程和活动,从原材料采购、生产到交付给最终消费者。利用 InterSystems IRIS 的协调功能,供应链管理解决方案可以更好地管理供应链:

在上一篇文章中,我们介绍了IrisOASTestGen——一个基于OpenAPI 2.0规范为InterSystems IRIS生成REST API测试代码的工具。该文章展示了如何使用OpenAPI Generator附带的默认模板来搭建测试用例。本文将聚焦于接下来的自然步骤**:自定义生成的测试代码**。通过使用Mustache模板扩展代码生成逻辑,我们可以表达更丰富的语义、实现CRUD感知测试,并创建更有意义的测试套件。本文的示例将修改IrisOASTestGen,为createPerson操作生成测试,包括遍历所有预期响应。这将展示如何使用OpenAPI规范中的自定义字段来驱动Mustache模板内的条件渲染。
为了使代码生成支持CRUD操作,OpenAPI规范可以在vendorExtensions中包含自定义字段。这些自定义字段作为标志,Mustache模板可以检测到它们。
该演示基于原始类描述。
使用的数据类包括地址、人员、雇员和公司。
为使演示更具吸引力,添加了按 ID 命名的 JSONtoString 方法。
InterSystems IRIS® data platform, InterSystems IRIS® for Health, and HealthShare® Health Connect 2026.1的第三个开发者预览版已发布到 WRC 开发人员预览版网站。 容器镜像可在我们的容器注册表中找到,其标签为latest-preview。
这些开发者预览版包括从 2026.1.0 开始不再支持 Mac Intel,以及为 2026.1.0 重新添加对 Windows Server 2019 的支持。
初始文档可在以下链接中找到:
这些文档链接目前只是占位符,随着最终版本的推出和更多细节的分享,这些链接将不断更新。以下是 2026.1 文档的一些显著新增内容:
由于这是早期的开发者预览版,一些内容仍在开发中,我们将在功能最终完成后提供完整的文档。我们感谢您在此阶段的耐心等待和反馈!
该版本为所有支持的平台提供了经典安装包,如需完整列表,请参阅 "支持的平台 "文档。
什么是 JWT?
JWT (JSON Web Token,JSON 网络令牌)是一种开放标准(RFC 7519),它提供了一种轻量级、紧凑、自足的方法,用于在双方之间安全地传输信息。它常用于网络应用程序中的身份验证、授权和信息交换。
JWT 通常由三部分组成:
1.JOSE(JSON Object Signing and Encryption,JSON 对象签名和加密)标头
2.有效载荷
3.签名
这些部分以 Base64Url 格式编码,并用点(.)分隔。
JWT 的结构
标题
{ "alg""HS256"有效载荷
{"1234567890"签名:
签名用于验证 JWT 的发件人是否为其本人,并确保信息未被篡改。
创建签名
1. base64 编码报头和有效载荷。
2.使用秘钥(对于对称算法,如 HMAC)或私钥(对于非对称算法,如 RSA)应用签名算法(如 HMAC SHA256 或 RSA)。
3.对结果进行 Base64Url 编码,以获得签名。
JWT 样本。查看JWT 内容

在本节中,我们将探讨如何在 IRIS 中使用 Python 作为主要编程语言,在使用 Python 编写应用程序逻辑的同时仍能利用 IRIS 的强大功能。
IRIS 支持开箱即用的 CCDA 和 FHIR 转换,但访问和查看这些功能需要大量的时间设置和产品知识。IRIS Interop DevTools 应用程序旨在弥补这一差距,让实施人员能够立即进入并查看产品的内置转换功能。
除了 IRIS XML、XPath 和 CCDA 转换环境,Interop DevTools 软件包现在还提供:
已经更新仪表板的外观和感触,看起来更加直观和用户友好。在 IRIS 中执行,以便充分利用环境,同时用户界面允许可见性、可重复性以及隔离修改和模块进行测试的能力。
.png)
以下是5个功能支持:
1. XPath 评估器: 根据输入 CCD 评估 XPath 并返回结果
2. CCDA 到 SDA 转换: 通过选定的基本 XSL 转换运行输入的 CCD,并显示 SDA 结果。
3. XSL 模板测试器: 针对输入 CCD 应用单个 XSL 模板,并显示生成的 CCD。
4. FHIR 到 SDA 转换: 在输入的 FHIR 资源或捆绑包上运行标准的 FHIR 到 SDA 转换,并显示 SDA 结果或 FHIR 验证错误响应。
5. 5.
可定制以收集全方位的身心健康数据。
Caren从可穿戴设备和护理设备点(如iHealth®、Fitbit®、Omron®、Tenovi®和Withings®)收集数据。数据显示在网络仪表板上,可以在电子病历系统内也可以独立查看。Caren可以定制,使用API从专门的医疗设备收集健康数据。
语音交互式移动应用程序提高了患者的参与度。
用户友好的语音交互式移动应用程序提供了简单、直观的设计,用户只需轻点一下即可进入或查看测量和观察结果。
公司介绍:https://www.carenmhealth.com
目标使用者--临床医生和患者
类别--临床研究、疾病管理、远程医疗
应用程序类型--SMART ON FHIR应用程序
FHIR 版本--R4
支持的电子病历系统--Cerner、Epic等支持FHIR API的软件系统
在当今充满活力的医疗保健行业,获取全面、精简的医疗记录对于做出明智的决策至关重要。人工智能驱动的健康图表应用程序是一个开创性的解决方案,旨在为医生提供一种获取和理解健康数据的有效方式。
主要功能
- 全面的数据检索: 健康图表应用程序通过提取各种健康数据,包括过敏症、病情、手术、免疫接种、药物、家族史、社会史、生命体征和化验结果,超越了传统记录。这种全面的视角可以让人们深入了解患者的健康历程。
.png)
- 通过人工智能增强洞察力:通过利用人工智能的力量,Health Chart 应用程序可以智能处理数据。人工智能引擎将原始信息转化为可操作的洞察,生成健康摘要和风险评估。这不仅节省了医生的宝贵时间,还提高了患者护理质量。
公司介绍:https://www.prairiebyte.com
目标使用者--临床医生
类别--护理协调, 数据可视化, 疾病管理/基层医疗
应用程序类型--SMART ON FHIR应用程序
FHIR 版本--R4
支持的电子病历系统--Cerner、Epic等支持FHIR API的软件系统
这篇文章介绍了使用由支持 langchain 框架的IRIS来实现问答聊天机器人,其重点介绍了检索增强生成(RAG)。
文章探讨了IRIS中的向量搜索如何在langchain-iris中完成数据的存储、检索和语义搜索,从而实现对用户查询的精确、快速的响应。通过无缝集成以及索引和检索/生成等流程,由IRIS驱动的RAG应用程序使InterSystems开发者能够利用GenAI系统的能力。
为了帮助读者巩固这些概念,文章提供了Jupyter notebook和一个完整的问答聊天机器人应用程序,以供参考。
什么是RAG以及它在问答聊天机器人中的角色
RAG,即检索增强生成,是一种通过整合超出初始训练集的补充数据来丰富语言模型(LLM)知识库的技术。尽管LLM在跨不同主题进行推理方面具有能力,但它们仅限于在特定截止日期之前训练的公共数据。为了使AI应用程序能够有效处理私有或更近期的数据,RAG通过按需补充特定信息来增强模型的知识。这是一种替代微调LLM的方法,微调可能会很昂贵。
在问答聊天机器人领域,RAG在处理非结构化数据查询中发挥着关键作用,包括两个主要组成部分:索引和检索/生成。
索引从数据源摄取数据开始,然后将其分割成更小、更易于管理的块以进行高效处理。这些分割的块随后被存储和索引,通常使用嵌入模型和向量数据库,确保在运行时能够快速准确地检索。
嘿开发者,
观看此视频,了解 UC Davis Health 如何使用 InterSystems API Manager 来满足业务合作伙伴对访问自定义 API 和 FHIR API 的需求:
大型语言模型(例如 OpenAI 的 GPT-4)的发明和普及掀起了一波创新解决方案浪潮,这些解决方案可以利用大量非结构化数据,在此之前,人工处理这些数据是不切实际的,甚至是不可能的。此类应用程序可能包括数据检索(请参阅 Don Woodlock 的 ML301 课程,了解检索增强生成的精彩介绍)、情感分析,甚至完全自主的 AI 代理等!
在本文中,我想演示如何使用 IRIS 的嵌入式 Python 功能直接与 Python OpenAI 库交互,方法是构建一个简单的数据标记应用程序,该应用程序将自动为我们插入IRIS 表中的记录分配关键字。然后,这些关键字可用于搜索和分类数据,以及用于数据分析目的。我将使用客户对产品的评论作为示例用例。

让我们首先创建一个 ObjectScript 类,该类将定义客户评论的数据模型。为了简单起见,我们将只定义 4 个 %String 字段:客户姓名、产品名称、评论正文以及我们将生成的关键字。该类应该扩展%Persistent,以便我们可以将其对象保存到磁盘。
ClassExtends%PersistentVR ICU® 是 InterSystems FHIR 创新孵化器 Caelestinus 的参与者。这篇文章将向您介绍我们利用 InterSystems FHIR Server 为医疗保健提供的 VR 解决方案。
我们是一家技术初创企业虚拟实验室,利用先进的 VR/AR 技术开发解决方案。VR ICU® 是一个针对重症监护室医务人员的培训平台,是在 Covid 时代为满足医院需求而创建的。
与InterSystems合作的优势
我们的 VR ICU® 解决方案符合实践需求,是与医院合作开发的。
除了技术解决方案和技能学习本身,记录培训课程、培训进度和成功率对于医院或麻醉学和重症监护部门的有效管理也至关重要。医务长可以通过了解谁在何时接受了培训,清楚地掌握能够在重症监护室使用设备的人员数量,从而有效地对他们进行培训,以保持技能、有控制地规划人员技能储备并提高他们的能力。
在这方面,与 InterSystems 的合作对我们来说至关重要,它使我们能够在应用程序中存储每次培训期间的数据。目前,我们会记录参与者的姓名、培训日期和时长、培训类型、设备类型、错误数量和类型,必要时还会记录培训成功完成的信息。
如何使用?用户登录应用程序并选择一个账户。
根据 HL7 标准,该账户作为从业人员存在于数据库的资源下。
在本文中,我将分享我们在 2023 年全球峰会技术交流室中提出的主题。我和@Rochael Ribeiro
借此机会,我们就以下话题进行探讨:
当我们谈论快速现代 API 开发(Rest / json)时,我们将使用两个 Intersystems Open Exchange 工具:
第一个是用于快速开发 API 的框架,我们将在本文中详细介绍。
https://openexchange.intersystems.com/package/IRIS-apiPub
第二种是使用 Swagger 作为用户界面,用于 IRIS 平台上开发的 Rest API 的规范和文档,以及它们的使用/执行。其运行的基础是开放 API 规范 (OAS) 标准,如下所述:
https://openexchange.intersystems.com/package/iris-web-swagger-ui

它是全球范围内用于定义、记录和使用 API 的标准。在大多数情况下,API 甚至在实现之前就已经设计好了。我将在下一个主题中详细讨论它。
我在官网上提供的java方式访问cache下载了一个示例代码 下载地址为:https://gettingstarted.intersystems.com/language-quickstarts/java-quick…
我在示例代码中看到有这样一种调用 irisNative.functionString("functionName", "routineName") ,请问functionName和routineName主要指什么东西,我在studio中创建了routine,但是也不需要通过functionName来访问呀。
如:http://localhost:52773/api/uima/v1/USER/swagger(即:http://localhost:52773/api/uima/v1/:namespace/swagger),通过获取注解的方式获取部分接口文档,只获取了 UIMA下的接口
有没有完全的中文文档包含目前所有的API接口文档及功能说明,相关接口路由如下图:
日常工作中,我们使用xml 应该是比较多的,早期的ensemble或者cache,对JSON的支持不是很好,但是对xml支持比较好。因此早期的接口方式中,webservice+xml的方式很常用。而对象导出为xml最简单的方式就是类继承 %XML.Adaptor。继承该类后,就可以使用很多xml的特性,以满足各种需求。虽然看不到对象转为xml的具体实现,但是配置了参数,就可以实现更多的效果。那么想自定义一些参数呢?如果有人打开过它的定义,可以看到类上面有个 “ PropertyClass = %XML.PropertyParameters”,那么我们其实在需要xml参数的同时,又要自定义参数,就可以自己写个属性类,继承于%XML.PropertyParameters。
这里,我姑且定义一个类,用于说明使用场景。
Class TEST.PropertyParameters Extends %XML.

前言
自接触IRIS以来在医院之中使用最多的是其作为一个ESB集成引擎来使用,作为医院的集成平台+数据中心中的一环。但是其也可以进行CRUD作为前后端分离项目的后端使用:
文章目录
前言
文章目录
一、开发技术和工具
二、开发路径和相关代码
1.数据库
2.准备工作
3.开发接口的相关步骤
4.成果展示
总结
本文章将以一个简单的页面展示IRIS的相关CRUD操作:
是的,我计划使用IRIS重构Production页面,先展示一下我开发完的成果吧:
呃の 好像是一毛一样,哈哈
一、开发技术和工具
工欲善其事,比先利其器:
后端:HealthConnect+Global
前端:vue
使用IRIS的%CSP.REST开发的Rest API接口,前端使用vue简单的把接口相关内容展示,可以编辑、新增组件,控制production启动、停止、更新检测状态。
二、开发路径和相关代码
1.数据库
首先,我们找到Production的相关表,分别是:Ens_Config.Item 和 Ens_Config.Production 如图所示:
所以代码的思路很明确了对Ens_Config.Item进行新增、删除、修改、查询操作对Ens_Config.Production进行查询操作。
2.
这是一篇笔记:
说明
Restful是一种基于Http的网络应用程序的设计风格和开发方式,可以使用xml格式或者Json格式定义。
RESTFUL特点包括:
1、每一个URI代表1种资源;
2、客户端使用GET、POST、PUT、DELETE4个表示操作方式的动词对服务端资源进行操作:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源;
3、通过操作资源的表现形式来操作资源;
4、资源的表现形式是XML或者HTML;
5、客户端与服务端之间的交互在请求之间是无状态的,从客户端到服务端的每个请求都必须包含理解请求所必需的信息。
IRIS中实现
GET:
XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap"Spring Boot 是最常用来创建 REST API 和微服务的 Java 框架。 它可用于部署 Web 应用程序、可执行 Web 应用程序或桌面自包含应用程序,其中应用程序和其他依赖项打包在一起。 Spring Boot 允许执行许多功能,请参见:

注:要了解有关 SpringBoot 的信息,请参见官方网站 - https://spring.io/quickstart
要创建具有一个或多个微服务的 Web api 应用程序,可以使用 Spring IDE for Eclipse/VSCode,并使用向导配置上述将在应用程序中使用的技术,请参见:
您可以选择技术并创建项目。 所有技术都将通过 maven 导入。 它就像一个可视化的 zpm。
所创建的项目有一个类用于为应用程序提供支持,其中包含所有所需内容(Web 和应用程序服务器,以及所有依赖项、微服务概念)。
此项目的完整源代码在以下 open exchange 项目中: https://openexchange.intersystems.com/package/springboot-iris-crud。
首先要配置 IRIS JDBC 驱动程序和 IRIS Hibernate 支持,为此,请将 jar 文件复制到 resources 文件夹,请参见:
打开 pom.
我想安装Windows版本的管理门户引擎来创建Cache InterSystems数据库
我想为Cache InterSystems创建一个样本数据库,并想通过Cache Entity Framework Provider访问它。但是,我无法找到一个特定的管理门户引擎来创建数据库。
你能指导一下如何在Windows中安装管理门户吗?
I want to create a Sample Database for Cache InterSystems and want to access it via Cache Entity Framework Provider. But, I cannot find a particular engine of Management Portal to create a database.
Can you guide how to install Management Portal in Windows?
这篇文章是上一篇文章的延续https://cn.community.intersystems.com/post/首次使用intersystems-iris-互操作性-一个production是什么?
在上一篇文章:https://cn.community.intersystems.com/post/首次使用intersystems-iris-互操作性-一个production是什么? 我们查验了什么是Production. 我们运行了示例代码,并在Visual Trace 页面查验了如何将流动消息的内容引入进Production中。
本文将回顾消息messages的概念和定义,和消息如何在系统集成所需的开发内容中用于组件之间发送和接收数据。
在创建 一个Message消息之前,让我们回顾一个案例研究。