Я следую этому руководству здесь по установке и использованию веб-перехватчиков. в ASP.Net MVC, но похоже, что это руководство предназначено для проекта типа wep api. Я использую проект типа MVC, и в отличие от проекта API нет метода регистрации. В MVC у нас есть метод RegisterRoutes. Итак, как мне зарегистрировать свои веб-хуки в MVC?
проект API, который использует регистрацию и настройку, на моем сайте ASP.Net MVC этого нет.
MVC использует RegisterRoutes
UPdate Здесь я добавил контроллер веб-API, и приведенный ниже код — это то, что находится в контроллере веб-API. Я включил пакеты nuget для веб-перехватчиков, регистрацию в global.asax.cs и в методе регистрации. Но у меня все еще есть проблемы с кодом «ExecuteAsync», точки останова не срабатывают.
public class StripeWebHookHandler : WebHookHandler
{
// ngrok http -host-header="localhost:[port]" [port]
// http(s)://<yourhost>/api/webhooks/incoming/stripe/ strip receiver
public StripeWebHookHandler()
{
this.Receiver = StripeWebHookReceiver.ReceiverName;
}
public override Task ExecuteAsync(string generator, WebHookHandlerContext context)
{
// For more information about Stripe WebHook payloads, please see
// 'https://stripe.com/docs/webhooks'
StripeEvent entry = context.GetDataOrDefault<StripeEvent>();
// We can trace to see what is going on.
Trace.WriteLine(entry.ToString());
// Switch over the event types if you want to
switch (entry.EventType)
{
default:
// Information can be returned in a plain text response
context.Response = context.Request.CreateResponse();
context.Response.Content = new StringContent(string.Format("Hello {0} event!", entry.EventType));
break;
}
return Task.FromResult(true);
}
}