.net - Weebhooks handlers 如何通过不同的 webhookhandlers 处理不同的事件
问题描述
以下情况:我可以为第 3 方提供商提供 webhook,该提供商会将所有事件发送到此 webhook 接收器。
我创建了一个标准的 WebHookHanler
public class CustomHandler : WebHookHandler
{
public override Task ExecuteAsync(string receiver, WebHookHandlerContext context)
{
//todo: handling logic
return Task.FromResult(true);
}
}
此提供程序将所有事件发送到此 webhook,因此我必须首先解析消息以了解正确处理它的事件(即,为每个事件编写一个方法)我的问题是:有没有办法可以编写每个特定事件的特定处理程序,并且事件将被路由到正确的处理程序?
因为在当前情况下,一切都归于那个 1 处理程序,并且解析消息以获取事件在这里似乎不是很优雅......
解决方案
这部分回答了我的问题:https ://github.com/aspnet/WebHooks/issues/237
如果您编写多个处理程序,则不可能只调用其中一个。无论如何,它将继续执行每个处理程序,但您可以退出任何不必要的处理程序检查,即。ID 属性(如提供的 URL)
问题是我的提供商总是将所有内容发送到同一个 URL,所以我什至无法修改请求中的 id 部分
也许这对某人有帮助
推荐阅读
- mysql - 运行本地 MySQL 实例 + 连接到 Crystal Reports
- javascript - 通过 express.sj 将数据插入 mongodb 时转换为数组失败
- python - 在字符串匹配结束时使用 argv 参数
- css - 在 reval.js R Markdown 演示文稿中更改标题幻灯片颜色
- javascript - 我们可以将 SPA 概念与 Nuxt.js 中的动态嵌套路由结合起来吗?
- java - 尽管有 FOR 循环的模拟语句,但意外的方法调用:EasyMock
- python - 在 pandas 数据框中组合 groupby 后创建共享变量
- c# - Xamarin 将图像生成到 ASP.NET API 控制器(发布)
- protractor - 在量角器中的 specDone 中打印当前页面的 URL
- html - 如何判断一个值是否为空?