1

我正在尝试构建一个 JSON webhook,我已经配置了接收器和 webhook 处理程序。我正在尝试将从 webhook 收到的 POST 数据保存到我的 SQL 服务器。但我不能。

当我向 webhook URL 发出 HTTP 请求时,我有 200 个 OK 响应,并且 webhook 处理程序中的调试点从未命中。我无法弄清楚问题所在,请帮助我。

下面是我的 webhook 处理程序和接收器配置以及 Global.ascx

网络挂钩处理程序

public CustomWebHookHandler()
{
    this.Receiver = "genericjson";
}

public override Task ExecuteAsync(string generator, WebHookHandlerContext context)
{
    //CustomNotifications notifications = context.GetDataOrDefault<CustomNotifications>();
    //return Task.FromResult(true);
    JObject dataJObject = context.GetDataOrDefault<JObject>();
    Console.Write("Data rx from webhook  " + dataJObject.ToString()); 
    return Task.FromResult(false);
}

接收者

    public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {


        var controllerType = typeof(WebHookReceiversController);


        config.MapHttpAttributeRoutes();

        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
        config.InitializeReceiveGenericJsonWebHooks(); 
    }
}

全球.ascx

public class Global : HttpApplication
{
    void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        GlobalConfiguration.Configure(WebApiConfig.Register);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
        AuthConfig.RegisterOpenAuth();
        RouteConfig.RegisterRoutes(RouteTable.Routes);
    }
}

调试点 从未到达 Webhook 处理程序方法 ExecuteAsync 我试图将数据保存到文件或数据库的位置。我是新手,如果有人有蚂蚁的想法,请帮助我。谢谢

当我向 Webhook URL 发出 HTTP POST 请求时,我注意到 Visual Studio 上的以下内容: iisexpress.exe 信息:0:注册的“IWebHookReceiver”实例具有以下名称:genericjson、custom。iisexpress.exe 信息:0:使用接收器“genericjson”和 id“i”处理传入的 WebHook 请求。iisexpress.exe 信息:0:为 ID“i”注册了配置设置“GenericJson”。iisexpress.exe 信息:0:为 ID 'z''注册了配置设置'GenericJson'。'iisexpress.exe'(托管 (v4.0.30319)):加载 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Numerics\v4.0_4.0.0.0__b77a5c561934e089\System.Numerics.dll',跳过加载符号。模块经过优化,调试器选项“只是我的代码” 已启用。线程 '' (0x376c) 以代码 0 (0x0) 退出。

4

0 回答 0