0

我创建了一个概念证明 asp.net C# 应用程序来接收 WooCommerce Webhook 请求。不幸的是,默认情况下,WooCommerce WebHooks 似乎不能很好地与 ASP.NET Webhook 接收器集成。在发现我应该使用自定义 Webhook 而不是 Wordpress Webhook 接收器之后,我现在遇到了签名问题。

当然,我希望 WooCommerce 插件完全保持原样,但是我现在将秘密直接添加到新的标题属性“ms-signature”中。我无法让自定义 Webhook 接收器接受它。

我收到错误消息:

“ms-signature”标头字段提供的 WebHook 签名与“CustomWebHookReceiver”接收者期望的值不匹配。WebHook 请求无效。

我在 web.config 中获得了以下秘密,我也将其用作 WooCommerce 秘密。

> <appSettings>
>     <add key="MS_WebHookReceiverSecret_Custom" value="7077693b67c9441a3dbbdbe7ac5b655ffdb323a40fd4ff7535d54c8f10e10582"/>
> </appSettings>

Woocommerce 日志

我尝试了很多事情,但我认为应该从 WooCommerce 使用签名的方式需要更改,以便自定义接收器接受它。

有人可以解释一下 ASP.NET webhook 的期望以及如何最好地更改我的解决方案吗?

4

1 回答 1

2

自定义接收器适用于由 ASP.NET WebHooks 生成的 WebHooks,因此无法正常工作。您可以尝试使用 WordPress 接收器或通用 Json WebHook 接收器吗?

您可以在两个 Nugets 中找到它们:

http://www.nuget.org/packages/Microsoft.AspNet.WebHooks.Receivers.WordPress/ http://www.nuget.org/packages/Microsoft.AspNet.WebHooks.Receivers.Generic/

希望这可以帮助,

亨里克

于 2017-02-21T04:48:13.520 回答