tfs - GenericJson WebHook 返回错误请求
问题描述
我正在尝试为 BuildCompleted 事件实现 WebHook。我遇到错误:从 Web 界面测试服务挂钩时出现错误请求 (400) 。事件日志或 IIS 日志文件中似乎没有关于错误的详细信息。WebApiConfig中的Register函数被命中,但我的 WebHook 中的构造函数或ExecuteAsync未命中。
任何帮助将不胜感激!我敢肯定,我似乎能看到自己是微不足道的。
我的设置包括本地 TFS 2018 Update 2 服务器和一个单独的带有用于 WebHook 的 IIS 的 Windwos Server 2012。我将 Global.asax 和 web.config 部署到 wwwroot 并将程序集部署到 wwwroot/bin。
网址:http://MYSERVER/api/webhooks/incoming/genericjson?code=83699ec7c1d794c0c780e49a5c72972590571fd8
网络配置:
...
<appSettings>
<add key="MS_WebHookReceiverSecret_GenericJson" value="83699ec7c1d794c0c780e49a5c72972590571fd8" />
</appSettings>
...
WebHookHandler:
public class GenericJsonWebHookHandler : WebHookHandler
{
public GenericJsonWebHookHandler()
{
this.Receiver = GenericJsonWebHookReceiver.ReceiverName;
}
public override Task ExecuteAsync(string receiver, WebHookHandlerContext context)
{
return Task.FromResult(true);
}
}
WebApiConfig:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new {id = RouteParameter.Optional}
);
// Initialize GenericJson WebHook receiver
config.InitializeReceiveGenericJsonWebHooks();
}
}
全球.asax.cs
public class Global : HttpApplication
{
protected void Application_Start()
{
GlobalConfiguration.Configure(WebApiConfig.Register);
}
}
解决方案
这只是需要 https 的 GenericJsonWebHookReceiver 的问题,这实际上是由文档指定的。
这个答案让我仔细研究了从GetResponse调用到服务的异常中的响应。
{"Message":"WebHook 接收器 'GenericJsonWebHookReceiver' 需要 HTTPS 以确保安全。请注册类型为 'https' 的 WebHook URI。"}
推荐阅读
- sql - 我想将此数据从 Json 文件插入到带有关系(外键)的 Sql 表中的多个表中,并将所有数据链接到一个主表
- python - 自定义转换器未通过列表
- spring - SpringBoot:无法使用 maven 创建耳朵:无法推断布局
- vertica - vertica 复制命令在 vertica shell 中工作,但不使用 vertica-python 游标
- python - QuantLib:交换到零息曲线自举
- r - 在R中的条件ifelse上添加上下标
- reactjs - 如何覆盖材质ui v3中的锚元素?
- python - psycopg2.errors.SyntaxError:在“ON”处或附近出现语法错误
- neo4j - 删除具有相同属性值的重复关系,保存与 Cypher 的其他关系
- java - 在 Wiremock 中评估 XPath 表达式