Отправка Powershell в Teams: неверная полезная нагрузка, полученная общим входящим веб-перехватчиком

Я пытаюсь отправить из Powershell 7 (в Windows) веб-перехватчик Teams.

Если я отправлю форматированную строку, она работает. Если я отправлю ту же строку через переменную, она тормозит. Есть идеи?

      PS Microsoft.PowerShell.Core\FileSystem::\AD>  $body = "`'{`"text`":`"mailbody`"}`'" 
PS Microsoft.PowerShell.Core\FileSystem::\AD> $boDY
'{"text":"mailbody"}'
PS Microsoft.PowerShell.Core\FileSystem::\AD> Invoke-RestMethod -Method Post -ContentType 'Application/Json' -Body $body -Uri $mychat
Invoke-RestMethod: Bad payload received by generic incoming webhook.
PS Microsoft.PowerShell.Core\FileSystem::\AD> Invoke-RestMethod -Method Post -ContentType 'Application/Json' -Body '{"text":"mailbody"}' -Uri $mychat
1

1 ответ

Ладно, иногда "stehe ich auf dem Schlauch" :-(

Хорошо, решение простое. Если вы передаете текст через переменную, вам не нужны начальный и конечный ', определяющие строку. Просто передайте саму строку через переменную.

      PS Microsoft.PowerShell.Core\FileSystem::\AD>  $body = "{`"text`":`"mailbody`"}"
PS Microsoft.PowerShell.Core\FileSystem::\AD> $body
{"text":"mailbody"}
PS Microsoft.PowerShell.Core\FileSystem::\AD> Invoke-RestMethod -Method Post -ContentType 'Application/Json' -Body $body -Uri $mychat
1
Другие вопросы по тегам