我创建了一个在SQL DB中插入记录的Runbook。然后我创建了一个webhook来调用Runbook。要插入的记录的数据在请求正文中作为JSON。但是,当我的Runbook被webhook调用时,我的WebhookData为null。 webhook在调用Runbook时应填充此对象。
是什么给出了?
以下是Runbook中的相关内容:
workflow MyRunbook
{
param(
[object] $WebhookData
)
inlinescript {
Write-Output "WebhookData $WebhookData"
$WebhookName = $WebhookData.WebhookName
$WebhookHeader = $WebhookData.RequestHeader
$WebhookBody = $WebhookData.RequestBody
$Params = ConvertFrom-Json -InputObject $WebhookBody
...
当我从Fiddler调用webhook时,我在Azure仪表板中确认有一个输入:WEBHOOKDATA,内容看起来正确。但是来自运行的日志只显示:WebhookData [nothing]
然后在尝试ConvertFrom-Json时出现异常,因为WebhookBody为null。
任何想法在这里出了什么问题?
提前致谢。
答案 0 :(得分:0)
我明白了。
我相信由于'inlinescript',任何带入webhook的变量都必须用'using'来引用。所以,这是我现在正在运行的更正代码。
workflow MyRunbook
{
param(
[object] $WebhookData
)
inlinescript {
Write-Output "WebhookData $using:WebhookData"
...
这产生了预期的反应。