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

时间:2016-01-31 16:12:45

标签: c# asp.net .net web-services webhooks

我一直关注Henrik F Nielsen关于新的ASP.NET WebHooks技术的一系列令人印象深刻的博客文章。 The latest post which can be found here,如果有兴趣的话。

In another, earlier one of these posts,我在评论中询问了WebHooks和SignalR之间的区别。后来将答案发布到great question (and answer) here on StackOverflow的链接。

然而,现在在阅读了该问题的答案之后,我现在要问:使用ASP.NET WebHooks和使用常规的OL'Web服务有什么区别? SignalR comparison answer中给出的接受答案表明“思考B2B通信”。但是,当我想到B2B通信时,我立即想到了Web服务 - 无论是SOAP还是REST(据我所知这一点 - 使用的HTTP动词与WebHooks非常相似)。

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

1 个答案:

答案 0 :(得分:5)

它只是那个"普通老mvc"之上的一层。自动交易"堆栈#34;提供特定的saas服务。

从前 - Webhooks手动编码

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

在asp.net中使用Webhooks让编码Dropbox的人也为你的webhook编码参数和框架代码。因此,更快速地做到这一点很容易。

显然,如果您发布自己的网络挂钩,那么他们就会提供管道,以便您可以创建"观察者"在您的代码中,它们为其他人提供了一种自动订阅这些监听器的方式。同样,您可以自己编写代码,但遵循标准是一种简单的方法,可以确保其他人在消费您的钩子时不会有陡峭的学习曲线。

思考" nuget for web services"

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

此服务对saas Web服务执行相同的操作。现在,作为saas服务提供商,我们可以编写一些类似nuget的软件包来下载/安装监听器。没有更多kb文章解释oauth1 vs oauth2 vs api-keys如何工作。我们只需创建一个小安装向导即可开始使用!

然而,当我们第一次开始使用nuget时,有一部分编码员询问&nu 34和nuget之间的区别,只是手动添加对代码的引用。"

vs SignalR

SignalR是一个活跃的"活跃的"连接到您的服务器。它创建了自己的聊天服务。 Webhooks(通用概念)只是对您的一个端点的http(s)调用。我认为,这是你的其他堆叠帖子的答案。

Webhook概念与MSFT" WebHook"

Msft正在进一步采取https帖子,并说Dropbox(或任何webhook提供商)可以创建一个供其他人使用的向导,通过身份验证,查询参数等来处理它们。这是一个很酷的主意,因为你我们不需要阅读Dropbox文档来使用Dropbox webhook。