我用" HTTP触发器"创建了azure函数。和#34;通用Webhooks"与Visual Studio 2017.我发现只有两个"触发"可以由HTTP请求触发。
这两个函数都有" HttpTrigger"作为参数。 所以当我们应该使用一个触发器时,我很困惑,因为两个触发器都允许我们在云中运行一小段代码。
它是如何彼此不同的?
答案 0 :(得分:3)
HttpTriggered函数可以响应您配置的任何HTTP谓词。但是,webhook只响应POST并期望有效负载为JSON。
这限制了只有那些使用HTTP POST和使用的人的请求 application / json内容类型。
答案 1 :(得分:1)
'Webhook'是用户定义的回调,可以在网站上注册,以防您想对某些事件作出反应。
例如,经常做的事情就是响应gtihub存储库中的事件,比如有人办理登机手续或添加问题。通常,您希望在签入时触发构建。您可以在github上register a callback/webhook指向您提供的对由github调用的HTTP POST做出反应的URL。
Azure函数可以configured由普通的HTTP请求触发,也可以设置为webhook,即只要某个网站上发生特定事件,就会调用它。配置为webhooks的功能仅响应HTTP POST。已经内置了值来将Azure功能设置为github或Slack webhook。
如果您没有对外部事件作出反应或者无法在事件源中注册webhook,只需使用HttpTrigger并显式调用您的函数。
答案 2 :(得分:0)
根据documentation,webhooks仅适用于Azure函数运行时的1.x版本,而如果使用较新的运行时2.x,则建议使用HttpTrigger。
从文档
在1.x版中,webhook模板为 webhook负载。在2.x版中,基本HTTP触发器仍然有效 这是针对Webhooks的推荐方法。