我目前正在使用Microsoft.AspNet.WebHooks实现WebHookHandler。我的钩子运行良好,但我需要能够返回5xx或4xx错误响应。
在线样本仅在ExecuteAsync方法r中显示返回
return Task.FromResult(true);
我尝试在我的异常处理程序中返回false,但发件人仍然将错误视为一个acknoledgement并收到200 OK。我希望发件人收到错误代码。
答案 0 :(得分:1)
这是一种你可以做到的方式:
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);
}
答案 1 :(得分:0)
使用传递给Response
方法的WebHookHandlerContext
参数的ExecuteAsync
属性明确设置HttpResponseMessage
。