2017-02-21 9 views
0

Я создаю доказательство концепции asp.net C# для получения запросов WooCommerce Webhook. К сожалению, по-видимому, по умолчанию WooCommerce WebHooks не очень хорошо интегрируются с ресивером ASP.NET Webhook. Узнав, что я должен использовать пользовательский Webhook вместо приемника Wordpress Webhook, у меня теперь есть проблемы с подписью.WordPress WooCommerce ASP.net: Подпись WebHook, предоставляемая полем заголовка «ms-signature», не соответствует ожидаемому приемником значению

Естественно, я хочу, чтобы плагин WooCommerce был полностью ванильным, однако теперь я добавил секрет непосредственно в новый атрибут заголовка «ms-signature». Я не могу заставить пользовательский приемник Webhook принять его.

Я получаю сообщение об ошибке:

The WebHook signature provided by the 'ms-signature' header field does not match the value expected by the 'CustomWebHookReceiver' receiver. WebHook request is invalid.

я получил следующий секрет в web.config, который я использую в качестве секрета WooCommerce, а также.

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

Woocommerce log

Я пытался несколько вещей, но я думаю, что путь подпись должна быть использована с WooCommerce должен быть изменен для пользовательского приемника, чтобы принять его.

Может кто-нибудь объяснить мне, что ожидает веб-хостинг ASP.NET и как я могу лучше всего изменить свое решение?

ответ

2

Пользовательский приемник предназначен для WebHooks, сгенерированных ASP.NET WebHooks, так что это не сработает. Можете ли вы вместо этого попробовать приемник WordPress или приемник Generic Json WebHook.

Вы можете найти их в двух Nugets:

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

Надеется, что это помогает,

Хенрика

+1

Вы находке. Я использовал общий приемник, пока он работал прямо на летучей мыши. спасибо –