API集成实例解读

举报
幂简集成 发表于 2024/09/26 09:20:30 2024/09/26
【摘要】 API 集成 是一种代码,它使一个系统能够通过 API(应用程序接口)安全地向另一个系统传输数据或从中获取数据。某些 API 集成可能仅涉及一个 API,而其他集成则可能涉及两个或多个 API。

image.png

API 集成指利用应用程序接口(API)实现一个系统与另一个系统间安全有效的数据交互。其中,单个 API 或多个 API 的整合均可实现。

常见的 API 集成有内联及外连两种类型:前者致力于企业内部业务流的智能化延续;后者主要针对跨企系统间的数据共享。文章以下述外部数据共享为例阐述相关要点,同样适用于内部集成。示例内容依次如下:

  1. 集成必要性解析(何因):揭示集成目的及其所面临的挑战。

  2. 技术条件列举(何物):详述实现集成所需的技术规格及要求。

  3. 实施过程详解(如何实施):详细介绍集成的具体步骤及策略。

集成业务需求

对于此 API 集成示例,您的公司提供了一个SaaS产品用于监控建筑物安全性,定期记录每个客户建筑物关键点的传感器的温度和湿度水平。客户需要一个集成方案,将这些温度和湿度值每天导出到其建筑维护应用程序(StructManager)。这样,客户可以分析这些数据与计划外维护票证之间是否存在相关性。

集成技术要求

在构建集成时,技术要求是关键。需要回答以下问题:

  • 数据:前一天(24小时期间)每栋建筑物的湿度和温度记录。
  • 方向:从您的产品单向导出到 StructManager。
  • 频率:每天早上 7 点(当地时间)运行一次。
  • API:您的产品使用SOAP API,StructManager 使用 REST API。
  • 协议:两个 API 都支持 HTTP。
  • 语言:您的产品输出SOAP XML,StructManager 接受 JSON 作为输入。
  • 身份验证:SOAP API和 REST API 使用OAuth。

此外,需要注意的是,湿度数据以百分比提供,温度数据在您的产品中使用摄氏度,而 StructManager 使用华氏度。您的产品每分钟收集一次数据,而 StructManager 需要每 15 分钟一次的数据。因此,这不仅仅是将数据从一个 API 传输到另一个 API,还需要处理数据格式转换和数据采样频率的调整。

执行的集成详细信息

在当地时间早上 7 点,集成触发器会向产品的 SOAP API 发送请求,查询过去 24 小时内每个建筑物的记录。SOAP API 使用内置的OAuth进行身份验证,接收到请求后,通过 HTTP 以 XML 格式返回所有匹配的记录。

单个记录的 XML 示例:

&lt;environmental&gt;<br>
    &lt;customer_id&gt;AA8312&lt;/customer_id&gt;<br>
    &lt;building_id&gt;H265&lt;/building_id&gt;<br>
    &lt;sensor_id&gt;1323&lt;/sensor_id&gt;<br>
    &lt;sensor_loc&gt;5W2NAB&lt;/sensor_loc&gt;<br>
    &lt;timestamp&gt;10:30&lt;/timestamp&gt;<br>
    &lt;temperature&gt;27.3&lt;/temperature&gt;<br>
    &lt;humidity&gt;55&lt;/humidity&gt;<br>
&lt;/environmental&gt;

集成首先将 XML 转换为 JSON,单条记录的 JSON 示例:

{<br>
    "environmental": {<br>
        "customer_id": "AA8312",<br>
        "building_id": "H265",<br>
        "sensor_id": 1323,<br>
        "sensor_loc": "5W2NAB",<br>
        "timestamp": "10:30",<br>
        "temperature": 27.3,<br>
        "humidity": 55<br>
    }<br>
}

对于在一栋建筑物上有 30 个传感器的示例客户,每天从 SOAP API 导出的记录总数为 43,200 条。集成需要筛选出 2,880 条记录,保留符合特定时间戳(如 hh:00、hh:15、hh:30、hh:45)的记录。虽然可以优化 SOAP API 请求以仅获取这些记录,但从数据超集开始处理可能更清晰。

筛选后的数据集需要再次转换,将摄氏度温度值转换为华氏度。转换后的示例数据与 StructManager 所需的格式匹配:

{<br>
    "environmental": {<br>
        "customer_id": "AA8312",<br>
        "building_id": "H265",<br>
        "sensor_id": 1323,<br>
        "sensor_loc": "5W2NAB",<br>
        "timestamp": "10:30",<br>
        "temperature": 81.1,<br>
        "humidity": 55<br>
    }<br>
}

最终,所有 2,880 条 JSON 编码的记录将通过 HTTP 请求发送到 StructManager REST API,并使用 OAuth 进行身份验证。API 集成成功运行,将在明天早上 7 点进行下一次运行。

其他 API 集成资源

当然,一个例子很难公正地描述像 API 集成这样复杂的主题。考虑到这一点,这里有一些资源可以帮助进一步理解 API 集成概念:

  • 按技术分类的 API(如 REST、XML-RPC、SOAP 和GraphQL。
  • 按访问类型(私有、合作伙伴、公共和开放)划分的 API。
  • 集成传输协议和传输语言
  • 集成媒体类型(以前称为 MIME 类型)。
  • 集成过程中的具体操作

总结

API 对于在 SaaS 产品之间构建数据集成非常有帮助。然而,拥有正确的工具来处理这些 API 至关重要。作为一家提供应用内集成的软件公司,使用这些工具可以在满足客户需求的最低限度集成和将集成无缝实施为 SaaS 产品的一部分之间,做出关键的区别,使客户无法区分您的产品和集成的界限。嵌入式集成平台就是其中一个重要工具。

幂简集成(Explinks.com),国内领先的API集成管理平台,专注于为开发者提供全面、高效、易用的API集成解决方案。我们通过构建强大的API社区和创新的集成工具,持续增加API品类及预集成服务商规模,让使用者一站发现、试用、集成国内外API接口,从而用API连接一切,加速其在AI时代的数字业务创新。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。