ASP.NET WebHooks 和 Web 服务之间的区别

本文关键字:之间 区别 服务 Web NET WebHooks ASP | 更新日期: 2023-09-27 18:32:47

我一直在关注Henrik F Nielsen关于新 ASP.NET WebHooks技术的一系列令人印象深刻的博客文章。 如果有兴趣,可以在这里找到最新的帖子。

在另一篇较早的帖子中,我在评论中问WebHooks和SignalR之间有什么区别。 答案后来被发布到StackOverflow上一个很好的问题(和答案(的链接中。

但是,现在在阅读了该问题的答案之后,我现在必须问:使用 ASP.NET WebHooks和使用常规Web服务有什么区别? SignalR 比较答案中给出的公认答案建议"考虑 B2B 通信"。 然而,当我想到B2B通信时,我立即想到了Web服务——SOAP或REST(据我所知,它们使用HTTP动词,就像WebHooks一样(。

我一直对学习 WebHooks 感兴趣,并且一直在关注这些帖子,但对于所有这些如何组合在一起仍然存在困惑,尤其是当其他技术似乎基本上做同样的事情时。 在这两种技术之间得到澄清会很棒。

ASP.NET WebHooks 和 Web 服务之间的区别

它只是"普通的旧MVC"堆栈之上的一层,它"自动"处理特定的SaaS服务。

曾几何时 -- Webhook 是手动编码的

考虑为dropBox webhook编写侦听器代码。 你必须从头开始编码所有参数和验证,你必须知道oauth2.0(并弄清楚如何激活它(,你需要弄清楚哪些钩子是可用的。

asp.net 中的 Webhook 让编写 Dropbox 代码的人也可以为您的 Webhook 编写参数和框架代码。因此,快速正确处理更容易。

显然,如果您要发布自己的 Webhook,那么它们将提供管道,以便您可以在代码中创建"观察者",并且它们为其他人提供了一种订阅这些侦听器的自动方式。同样,你可以自己编写代码,但遵循标准是一种简单的方法,可以确保其他人在使用你的钩子时没有陡峭的学习曲线。

考虑"用于 Web 服务的 nuget">

想想 nuget 如何从根本上改变了向代码添加引用的过程。您只需将包添加到解决方案中,系统就会负责下载、web.config 更改等。

此服务对 SaaS Web 服务执行相同的操作。现在,作为 saas 服务提供商,我们可以编写一个类似 nuget 的小包来下载/安装侦听器。 没有更多的知识库文章解释 oauth1 vs oauth2 与 API 密钥的工作原理。我们只需创建一个小的安装向导,然后就可以了!

然而,当我们第一次开始使用 nuget 时,有一部分编码人员问"nuget 和手动添加对代码的引用有什么区别"。

vs 信号R

SignalR 是与服务器的实时"活动"连接。它正在创建您自己的类似聊天的服务。 Webhooks(通用概念(只是对端点之一的http(s(调用。我认为,这就是你另一个堆栈帖子的答案的重点。

Webhook the concept vs msft "WebHook">

Msft将https帖子更进一步,并表示Dropbox(或任何webhook提供商(可以创建一个向导供其他人使用,以引导他们进行身份验证,查询参数等。 这是一个很酷的主意,因为您无需阅读Dropbox文档即可使用Dropbox网络钩子。