2

我正在为来自同一应用程序中不同服务器的内部 webhook 设置 Asp.Net WebHook 接收器。因此,我使用内置的 CustomWebHookReceiver。webhook 需要以 JSON 的形式发送几种不同的有效载荷类型,这些有效载荷类型需要被接收方反序列化为不同的强类型,并进行不同的处理。

由于 webhook 调用之间的唯一区别是有效负载,因此将为单个 id 配置单个 webhook 接收器,遵循将共享密钥放置在 web.config AppSetting 中的模式:

MS_WebHookReceiverSecret_<receiver>

为不同的有效负载类型实现不同的 webhook 处理行为的最佳方法是什么。为不同的有效负载类型创建单独的接收器或单独的 ID 似乎不合适,因为安全模型是相同的,并且编写一个新的接收器似乎是矫枉过正。

创建不同的处理程序似乎是正确的方向,但内置设置似乎只允许处理程序指定接收者和优先级。这留下了检查处理程序的 ExecuteAsync 方法内的有效负载并决定如何处理消息的选项。

这是正确的,还是有更好的方法?

4

1 回答 1

1

Tom,您可以使用 URI 的 {id} 部分使用相同的处理程序接收尽可能多的 WebHook,然后根据 {id} 区分它们。您可以在此处找到有关如何设置的更多详细信息。

希望这可以帮助!

亨里克

于 2016-12-28T18:55:20.570 回答