我如何 return .NET Webhook 处理程序中的 4xx 或 5xx 错误响应?
How do I return a 4xx or 5xx error response in a .NET Webhook Handler?
我目前正在使用 Microsoft.AspNet.WebHooks 实现 WebHookHandler。我的钩子 运行 很好,但我需要能够 return 5xx 或 4xx 错误响应。
示例仅在 ExecuteAsync 方法中显示 return:
return Task.FromResult(true);
我在我的异常处理程序中尝试 returning false,但发送方仍然将错误视为确认并收到 200 OK。我希望发件人收到错误代码。
使用传递给 ExecuteAsync
方法的 WebHookHandlerContext
参数的 Response
属性 显式设置 HttpResponseMessage
。
这是您可以做到的方法:
public override Task ExecuteAsync(string receiver, WebHookHandlerContext webHookContext)
{
//Throw exception is a way
//throw new Exception("Exception will be returned if uncomment this section");
var response = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.OK);
response.Content = new System.Net.Http.StringContent("Custom response");
webHookContext.Response = response;
return Task.FromResult(true);
}
我目前正在使用 Microsoft.AspNet.WebHooks 实现 WebHookHandler。我的钩子 运行 很好,但我需要能够 return 5xx 或 4xx 错误响应。
示例仅在 ExecuteAsync 方法中显示 return:
return Task.FromResult(true);
我在我的异常处理程序中尝试 returning false,但发送方仍然将错误视为确认并收到 200 OK。我希望发件人收到错误代码。
使用传递给 ExecuteAsync
方法的 WebHookHandlerContext
参数的 Response
属性 显式设置 HttpResponseMessage
。
这是您可以做到的方法:
public override Task ExecuteAsync(string receiver, WebHookHandlerContext webHookContext)
{
//Throw exception is a way
//throw new Exception("Exception will be returned if uncomment this section");
var response = new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.OK);
response.Content = new System.Net.Http.StringContent("Custom response");
webHookContext.Response = response;
return Task.FromResult(true);
}