写点什么

微软发布了 ASP.NET WebHooks 预览版

  • 2015-11-15
  • 本文字数:1364 字

    阅读完需:约 4 分钟

微软近期发布了ASP.NET WebHooks 的预览版,这是一个可用于创建及使用Webhook 功能的库。WebHooks 支持MVC 5 及WebApi 2。

Webhook 是一种通过 HTTP 实现用户自定义回调函数的模式。客户可以选择订阅某些类型的事件,并在这些事件实际发生时以 POST 请求的方式接收这些事件。Webhook 的一大要点在于它是使用 HTTP 实现的,这也意味着利用或实现这项技术无需任何新的基础设施的支持。

ASP.NET WebHooks 为 Webhook 的发送与接收操作提供了基础构建块。在接收端,它提供了一种通用的模型,用于接收并处理来自于 Webhook 提供者的事件。而在发送端,它则提供了对管理订阅与发送事件功能的支持。

InfoQ 与来自微软 ASP.NET 团队的 Henrik F Nielsen 和 Brady Gaster 进行了一次访谈,以了解该项目更多的细节信息。

InfoQ:成立 ASP.NET WebHooks 这一项目的动机是什么?

ASP.NET WebHooks 成立的动机有两方面

  1. WebHooks 为 HTTP 服务的整合提供了一种协议模式,从而能够通过 HTTP 请求的形式建立一种非常简单的事件通知模型。通过对某个 Webhook 的订阅,你就能够关注其他服务上的更新,并在更新时获得通知。这样一来,就有大量的整合场景成为可能。你将能够与其他的服务进行交互、在变更时获得通知、并进行相应的操作。这种整合可以包括任何形式,例如在 Dropbox 中上传了某个新文件、在 Trello 中新建了一个 Issue、或是通过 PayPal 进行了一次支付操作。随着 WebHooks 的应用不断增多,这种应用场景也将产生指数级的增长。
  2. 虽说这一模式本身并不复杂,但还是有一些基本的规则需要处理。包括安全模型、数据格式、以及基于这一基本模式的各种变体。麻烦的地方在于,目前大多数的 Webhook 提供者在处理这些基本规则时都存在着细微的差别。这种差别就像雪花一样,虽然每片雪花看起来都很相似,但多多少少存在着一些特别之处。ASP.NET WebHooks 的目的就是处理所有这些繁琐的部分,提供一个统一的用户模型,并让用户能够快速开始进行在服务间进行整合的任务

InfoQ:Webhook 除了 HTTP 之外并没有其他任何确立的协议,那么在发送方是否会存在某些方面的限制因素?(作为接收者来说)ASP.NET WebHooks 是否能够自动兼容那些目前已经提供 Webhook 的服务呢?

HN:我们已经在项目中提供了针对各种服务的 Webhook,例如 Azure
Alerts、BitBucket、Dropbox、GitHub、Kudu、Instagram、
MailChimp、PayPal、Pusher、Salesforce、Slack、Stripe、Trello,以及 WordPress,不过要添加对其他提供者的支持也是很简单的,并且所支持服务的名单还在不断地增长中。事实上,对于 Kudu 和 BitBucket 的支持是来自于社区所提交的 pull 请求,我们也正在添加对更多的提供者的支持。

InfoQ:到 WebHooks 正式发布为止,它的路线图是怎样的?

HN:关于正式发布的计划,我们现在还没有什么正式的说法,不过我们很乐于倾听来自社区的反馈,并接受他们的贡献,包括 pull 请求和各种建议

BG:我们从社区中获得了一些反馈,他们希望能够对 WebHook 接收消息的功能进行调试,就像在本地进行调式一样。他们也欣赏远程调试的想法,但更愿意能够通过点击“F5”来启动他们的项目并发送 Webhook。我们目前正在为某些想法设计原型,争取为 Visual
Studio 带来这一特性。

ASP.NET WebHooks 是一个开源项目,托管在 GitHub 平台上。

查看英文原文 Microsoft Releases ASP.NET WebHooks Preview

2015-11-15 18:002943
用户头像

发布了 428 篇内容, 共 189.7 次阅读, 收获喜欢 39 次。

关注

评论

发布
暂无评论
发现更多内容

品牌活动|行云创新出席“新工业·智物联”全国巡回 CEO 峰会

行云创新

行云创新 新工业 智物联 全国巡回CEO峰会珠海站

天呐!我真的没想到推特GIF动图保存到手机相册竟然简单几步就能完成!

frank

twitter

华为云GaussDB坚持技术引领,以数字化转型激活金融科技新动能

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

生物计算大模型技术在药物研发领域的应用

Baidu AICLOUD

生命科学 PaddleHelix

中国边缘云公有云服务市场 Top2,百度智能云让智算无处不在

Baidu AICLOUD

分布式云

上海首个大模型产业发展研讨会圆满落幕,众顶尖专家共探大模型产业

NLP资深玩家

如何雇佣一名全民开发者?

草料二维码

开发者 低代码 无代码开发 无代码 无代码微信小程序

Apache Flink ML 2.2.0 发布公告

Apache Flink

大数据 flink 实时计算

Java中的「接口」到底是什么?

海拥(haiyong.site)

三周年连更

Mybatis返回集合类型到底是空集合还是null?源码解读

Java 源码 mybatis

GPU 加速药物研发与基因组学分析

Baidu AICLOUD

生命科学

大语言模型时代狂飙以来,到底是谁在让你失业|社区征文

小诚信驿站

三周年征文

我认真总结并分析了Spring事务失效的十种常见场景

Java spring Spring事务

GitHub爆款!Java性能优化:轻松道破软件性能调优,不止搞定JVM

Java你猿哥

Java JVM Java性能优化

Typescript- 数据类型

格斗家不爱在外太空沉思

typescript 三周年连更

从零学习SDK(9)SDK的局限

MobTech袤博科技

【Linux】firewall-cmd之防火墙简介及命令详解【附加实战⭐建议收藏!!⭐】

A-刘晨阳

Linux 防火墙 Firewalld防火墙 三周年连更

浅谈智能语音交互

六月的雨在InfoQ

语音识别 语音合成 三周年连更 智能语音交互

赋能开发者,开放原子全球开源峰会期待你的声音!

开放原子开源基金会

大数据 开源 开源软件

2023云数据库技术沙龙MySQL x ClickHouse专场成功举办

NineData

MySQL 腾讯云 阿里云 云数据库 技术沙龙

超级详细|Linux系统下从0到1的玩法大全

浅羽技术

Linux unix 操作系统 命令 三周年连更

常用工具

流火

ChatGPT及大模型专题研讨会在蓉成功举办共探前沿技术与产业发展

NLP资深玩家

Split to Be Slim: 论文复现

华为云开发者联盟

人工智能 华为云 论文 华为云开发者联盟 企业号 4 月 PK 榜

AI数字人产品“世优BOTA”发布会落幕,世优科技纪智辉演讲回顾

联营汇聚

【FAQ】统一扫码服务常见问题及解答

HarmonyOS SDK

HMS Core

python中对象引用 | python小知识

AIWeker

Python python小知识 三周年连更

全栈开发实战|Vue进阶——使用静态模块打包工具webpack

TiAmo

Vue webpack 三周年连更 静态模块打包

为什么说网络安全行业是IT行业最后的红利?

网络安全学海

网络安全 安全 信息安全 渗透测试 WEB安全

技术干货|如何利用 ChunJun 实现数据实时同步?

袋鼠云数栈

开源 数据采集

微软发布了ASP.NET WebHooks预览版_.NET_Pierre-Luc Maheu_InfoQ精选文章