当前位置: 首页 > news >正文

一个示例了解什么是 API 集成

API 集成 是一种代码,它使一个系统能够通过 API(应用程序接口)安全地向另一个系统传输数据或从中获取数据。某些 API 集成可能仅涉及一个 API,而其他集成则可能涉及两个或多个 API。

API 集成通常分为两类:

  1. 内部集成: 旨在自动化公司内部的业务流程。
  2. 外部集成: 旨在连接来自不同公司的系统,实现外部数据共享。

本文将以外部数据共享为例进行说明,但这些概念也适用于内部集成。示例将按以下顺序展开:

  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 示例:

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

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

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

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

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

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

最终,所有 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 产品的一部分之间,做出关键的区别,使客户无法区分您的产品和集成的界限。嵌入式集成平台就是其中一个重要工具。

原文链接:What Is an API Integration Example?

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 设计模式之责任链
  • CSS基本概念以及CSS的多种引入方式
  • CSS调整背景
  • 使用 HFD 加快 Hugging Face 模型和数据集的下载,解决443报错
  • PHP 递归遍历目录
  • 时序预测:LSTM、ARIMA、Holt-Winters、SARIMA模型的分析与比较
  • 银从初级个人理财_08_第三章第二节
  • ShardingSphere 分库分表
  • 【测试项目】——个人博客系统自动化测试
  • 《微信小程序实战(3) · 推广海报制作》
  • Oracle表空间管理(二)
  • Servlet入门:服务端小程序的初试(自己学习整理的资料)
  • Spring Boot实战:使用策略模式优化商品推荐系统
  • Linux的基础知识
  • Python | Leetcode Python题解之第433题最小基因变化
  • 2017届校招提前批面试回顾
  • git 常用命令
  • java取消线程实例
  • PAT A1050
  • Python语法速览与机器学习开发环境搭建
  • SwizzleMethod 黑魔法
  • ucore操作系统实验笔记 - 重新理解中断
  • Vultr 教程目录
  • 代理模式
  • 将回调地狱按在地上摩擦的Promise
  • 少走弯路,给Java 1~5 年程序员的建议
  • 使用parted解决大于2T的磁盘分区
  • 问题之ssh中Host key verification failed的解决
  • 学习ES6 变量的解构赋值
  • 源码安装memcached和php memcache扩展
  • 掌握面试——弹出框的实现(一道题中包含布局/js设计模式)
  • UI设计初学者应该如何入门?
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • ​渐进式Web应用PWA的未来
  • # Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型
  • #{} 和 ${}区别
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (2022 CVPR) Unbiased Teacher v2
  • (52)只出现一次的数字III
  • (C#)获取字符编码的类
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (poj1.3.2)1791(构造法模拟)
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (算法)N皇后问题
  • (已解决)vscode如何选择python解释器
  • (转)关于多人操作数据的处理策略
  • (转)用.Net的File控件上传文件的解决方案
  • . Flume面试题
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .net CHARTING图表控件下载地址
  • .NET Core IdentityServer4实战-开篇介绍与规划
  • .NetCore项目nginx发布
  • .NET学习全景图
  • .Net中间语言BeforeFieldInit