前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Webhook 与 API:有什么区别?

Webhook 与 API:有什么区别?

原创
作者头像
用户9958066
发布于 2022-09-09 02:51:02
发布于 2022-09-09 02:51:02
2.6K0
举报
文章被收录于专栏:HiflowHiflow

Webhook 与 API:有什么区别?

WechatIMG202.png
WechatIMG202.png

数字时代的关键驱动力是通信。作为人类,我们希望技术能够帮助我们更快、更轻松地与更多人交流。想要实现这一点,我们必须首先找到一种让技术相互交流的方法,这就是 APIwebhook 发挥作用的地方。

Webhook 和 API 都有助于在两个应用程序之间同步和中继数据。但两者有各自不同的方式,因此服务的场景略有所不同。为了消除两者之间的任何混淆,让我们看一下 webhook 和 API 的区别,以及它们最适合哪种场景。

Webhook 与 API:简单术语的区别

简单来讲,API 会在您要求时执行操作,而Webhook会在满足某些条件或发生场景时自行执行操作。让我们深入一点,可以通过服务器调用 API 与 example.com进行通信。通过该通信,API 可以列出、创建、编辑或删除项目, 不过,API 需要得到说明。

Webhook 是从example.com到服务器的自动调用。当 example.com上发生特定事件时会自动触发这些调用。例如,如果新用户在 example.com 上注册,服务器会自动给该用户发送欢迎电子邮件。

什么是 Webhook?

有时 webhook 被称为反向 API,但这并不完全正确。它们不会向后运行,而是不需要您主动发起请求,只要有新数据可用,就会发送数据。

要设置 webhook,您只需公司注册一个 URL, 该 URL 将接受数据并可以激活工作流并将数据转化为有用的东西。在大多数情况下,您甚至可以指定提供商将向您提供数据的情况。

Webhook 和 API 在发出请求的方式上有所不同。例如,无论是否有数据更新响应,API 都会调用数据。而 webhook 仅在您连接的外部系统有数据更新时才通过 HTTP POST 接收调用。

何时使用 WebHook

Webhook 通常用于执行较小的请求和任务,在某些情况下,Webhook 比整个 API 更合适。

一种常见情况是当您的应用程序或平台需要实时更新,但您不想浪费服务器资源时。在这种情况下,webhook 将是有益的。

但是,有一点关于 webhook 的弊端是由于它们不用于定期请求数据,并且仅在有新数据可用时才会这样做,因此如果系统由于某种原因脱机,您可能永远无法了解新的更新。您对总数据流的控制相对较少,因为您必须接受给定更新可用的总数据量。

现实生活中的 Webhook 示例

许多应用程序和工具确实依赖于 webhook,但主要用于较小的数据请求,而不是使用它们来担当主干服务。尽管如此,仍然有很多有效使用 webhook 的例子。

1. Hiflow场景连接器 本质上是一个巨大的网络钩子。可以帮将某些应用程序链接在一起,每当一个事件发生时,它就会触发另一个应用程序的动作。

2. 腾讯问卷有一个 webhook,只要有人完成了问卷,就会自动将问卷完成信息推送到对应的企业微信 群进行周知。

什么是 API?

API 指的是应用程序编程接口。API 是应用程序和平台通过通用通信方法与其他应用程序和平台连接的一种方式。要使 API 工作,需要对数据提出请求,然后是对该请求的响应。数据通常以 JSON 等格式交付。

API 往往是许多现有软件和工具所依赖的框架。例如,创建腾讯文档的应用程序可以依靠 API 不断从 腾讯文档获取最新数据。大多数大型应用程序都有多个 API,它们与扩展其服务产品集成,如下所示。

何时使用 API?

当您知道您将不断更改数据时,使用API则非常合适。如果您需要的数据相对停滞,那么使用 API 是没有意义的。例如,如果您是一家电子商务商店,需要定期更新其运输和跟踪数据,那么您将不断提出请求。每次轮询 API 时,您都会获得新数据。如果您的数据没有不断更新,则无法保证在另一端为您准备好数据。发生这种情况时,您只是在浪费服务器资源。但是,如果您打算使用 API,则可以施加调用限制,这将限制您在设定的时间段内进行的调用次数以减少最终的资源使用。

现实生活中的 API 示例

1.有赞商城有一个查询店铺信息的API,通过调用该API我们可以查询到对应店铺的注册地址,上架商品等信息

2.问卷网有一个查询问卷信息的API,通过发送HTTP请求调用该API我们可以获取用户创建的问卷信息,问卷项目列表等

Webhook 和 API 在不同的圈子中运行

这不是说哪一个更好,因为没有任何一种方法在所有的场景下都是优于其他的方法的。因地制宜才是最佳的实践方式。

举个例子,您可以将 API 视为发送给朋友的文本消息,以获取有关他们正在主持的活动的更多信息。你问一个问题,他们就会回复,类似于半双工tong xin。

使用 webhook,您可以告诉您的朋友在他们组织另一项活动时给您发短信,只是为了让您知道。您提出初始请求,当新信息出现时,他们会不断向您发送更新。

最后,大多数应用程序最终会同时使用 API 和 webhook 来创建一个可以在正确的时间传递正确类型的数据的系统。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Webhook 是什么?Webhook与API有什么区别
相信很多用户在使用企业微信机器人、飞书机器人、钉钉机器人、腾讯云HiFlow场景连接器、腾讯问卷这些应用时,都有一个问题,这些应用都提供了Webhook,但是部分没有代码开发能力的人可能很困惑,Webhook究竟是什么?我应该如何使用?
阿那个沫
2022/11/04
14.8K0
Webhook 是什么?Webhook与API有什么区别
什么是webhook
Webhook是一个API概念,并且变得越来越流行。我们能用事件描述的事物越多,webhook的作用范围也就越大。Webhook作为一个轻量的事件处理应用,正变得越来越有用。
菲宇
2022/12/21
1.3K0
浅谈6种流行的API架构风格
API在现代软件开发中扮演着重要的角色,它们是不同应用程序之间的桥梁。编写业务API是日常开发工作中最常见的一部分,选择合适的API框架对项目的成功起到了至关重要的作用。本篇文章将浅谈一下当前6种流行的API架构风格的优点、缺点以及适用场景。
追逐时光者
2024/01/12
5920
浅谈6种流行的API架构风格
使用webhook实现代码自动化部署 原
自己搭建的博客,代码托管到github,心想博客更新那么频繁,每次push代码后都到服务器上手动部署,实在是太麻烦, 于是想到自动化部署,开始的时候只是想通过一个简单的 shell +cron的方法来解决,但是这方法真的太笨了,一点都不 智能 。想到github的webhook,之前只是听说,明白其原理,并没有实操,这次刚好可以亲自体验一把了。具体如下:
阿dai学长
2019/05/14
2.6K0
使用webhook实现代码自动化部署
                                                                            原
每日一博 - WebHook vs Polling
假设我们运行一个电子商务网站。客户通过API网关将订单发送到订单服务,然后订单服务将订单传递给支付服务进行支付交易。支付服务然后与外部支付服务提供商(PSP)通信,以完成交易。
小小工匠
2023/09/18
2140
每日一博 - WebHook vs Polling
流行的几种API接口模式:RESTful、GraphQL、gRPC、WebSocket、Webhook
当思考使用哪种API接口时,你将会面临一个重要的决策。RESTful、GraphQL、gRPC、WebSocket和Webhook是当前流行的几种API接口模式。在本文中,我们将介绍这些接口的特点、用途和比较,帮助你选择最适合你应用程序需求的接口。
网络技术联盟站
2023/09/01
2.8K0
流行的几种API接口模式:RESTful、GraphQL、gRPC、WebSocket、Webhook
如何使用Node.js和Github Webhooks保持远程项目同步
在处理具有多个开发人员的项目时,当一个人推送到存储库然后另一个人开始对过时版本的代码进行更改时,这可能会令人沮丧。像这些花费时间的错误,这使得设置脚本以保持您的存储库同步是值得的。您还可以在生产环境中应用此方法以快速推送修补程序和其他更改。
小翼111
2018/11/05
3.9K0
Webhook技术解析:实时数据同步的利器
Webhook,作为一种高效的数据传输方式,在现代Web开发中扮演着重要的角色。它是一种“反向API”,允许一个应用程序向另一个应用程序提供实时信息。简单来说,当在一个应用程序中发生特定事件时,它会发送一个HTTP POST请求到另一个应用程序的预设地址,从而实现实时数据传输。
运维开发王义杰
2024/01/20
2.5K0
Webhook技术解析:实时数据同步的利器
开源标准统一Webhook
Webhook长期以来缺乏标准规范,给接受端的开发者带来编程难题。一个新的开源标准力图改变这种状况。
云云众生s
2024/03/28
3290
腾讯云Elasticsearch Watcher 功能之 Webhook实践
Elasticsearch 的商业包 x-pack 给我们提供了很多高阶功能,其中有一个非常重要的用来检测日志是否异常并及时发送警报信息的功能,我们称这个功能为Watcher for alert.
南非骆驼说大数据
2020/12/03
3.3K1
腾讯云Elasticsearch Watcher 功能之 Webhook实践
最流行六种的 API 架构风格(附 Node.js DEMO)
本篇将介绍六种最流行的 API 架构风格,分别是 SOAP、RESTful、GraphQL、gRPC、WebSocket 和 Webhook。对于每种 API 架构风格,我们将深入探讨其优点、缺点以及适用场景,并提供相应的 DEMO 以帮助读者更好地理解每种 API 架构的实现方法和运作原理。
Cellinlab
2023/06/01
2.2K0
最流行六种的 API 架构风格(附 Node.js DEMO)
Webhooks与API的区别在哪里?
Webhooks起初看起来像是API,但它们略有不同。它们之间的主要区别在于,webhooks不需要发出请求即可获得响应,而API则需要发送请求才能获得响应。使用Webhooks可以接收,而API需要您检索。
DevOps云学堂
2020/09/29
3.7K0
Webhooks与API的区别在哪里?
前端中的中间件?帮助管理Vercel上Webhook的工具
Hookdeck 的一个新的开源中间件将帮助开发者管理 Vercel 上的异步事件。Hookdeck Vercel 中间件 旨在仅使用三行代码在 Vercel 的系统上运行。
云云众生s
2024/06/09
1240
详细了解 Linkerd 2.10 基础功能,一起步入 Service Mesh 微服务架构时代
Linkerd 提供了许多功能,如:自动 mTLS、自动代理注入、分布式追踪、故障注入、高可用性、HTTP/2 和 gRPC 代理、负载均衡、多集群通信、重试和超时、遥测和监控、流量拆分(金丝雀、蓝/绿部署)等。
为少
2021/07/07
1.4K0
如何在Ubuntu 16.04使用Buildbot建立持续集成系统
Buildbot是一个基于Python的持续集成系统,用于自动化软件构建,测试和发布过程。
angel_郁
2018/08/06
1.8K0
如何在Ubuntu 16.04使用Buildbot建立持续集成系统
Kubernetes超越RBAC – 通过Webhook自定义授权
Kubernetes 是一个很棒的容器编排工具,它提供了许多自定义选项。您可以轻松地扩展/替换它的许多…
云云众生s
2024/09/12
1320
Kubernetes超越RBAC – 通过Webhook自定义授权
Webhook端口使用介绍与演示
在API接口调用的集成项目中,用户调用知行之桥的API接口以给EDI系统推送数据时,经常会有这样的疑问:怎样查看是否调用接口成功?怎样查看数据是否推送成功?推送之后用户端会有怎样的响应提示?
知行软件EDI
2023/01/05
1.9K0
标准化API设计流程!
架构样式定义了应用程序编程接口(API)的不同组件如何相互交互。因此,它们通过提供设计和构建API的标准方法,确保了效率、可靠性和与其他系统的轻松集成。
Tinywan
2024/05/20
2300
标准化API设计流程!
为什么说ETL数据集成无法满足企业当下的业务需求呢?
长期以来,IT团队一直依赖企业数据仓库作为其业务工作流程的中央数据基础设施。所有的东西都是通过这个仓库运行的,ETL是数据集成的可靠工具,从源应用程序和系统中提取数据,将其加载到目标仓库中,并将其转换为可访问的形式。
知行软件EDI
2021/09/16
7270
为什么说ETL数据集成无法满足企业当下的业务需求呢?
加速边缘AI开发:释放Metropolis API和Jetson上的微服务的强大力量
本文整理自NVIDIA讲座《Accelerate Edge AI Development With Metropolis APIs and Microservices on Jetson》。
GPUS Lady
2023/11/22
3810
加速边缘AI开发:释放Metropolis API和Jetson上的微服务的强大力量
推荐阅读
相关推荐
Webhook 是什么?Webhook与API有什么区别
更多 >
LV.0
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档