我正在尝试将一个 png 格式的 base64 字符串发送到我们的团队频道,该频道具有“传入 Webhook”设置。
消息已发送到频道,但没有显示图像,当我搜索此内容时,似乎无法将图像或任何其他类型的附件作为 base64 字符串发送到 Teams?
对于 json 和一般使用/使用 REST API 来说是非常新的。
我不知道如何指示主体该字符串是 base64 字符串,并且预期输出应该是 png 文件。
尝试过这个:
$webhook = 'URLtoTeamsWebhook'
$base64 = "longBase64string"
$Body = @{
"text" = "Hello World! from PowerShell"
"imageData" = "$base64"
}
$params = @{
Headers = @{'accept'='application/json'}
Body = $Body | convertto-json
Method = 'Post'
URI = $webhook
}
Invoke-RestMethod @params
但它不起作用,还尝试了下面的代码并对正文进行了更改:
$Body = @{
"type" = "string",
"contentEncoding" = "$base64",
"contentMediaType" = "image/png"
}
而且它也不起作用。
“不起作用”= 发布到 Teams 但根本不显示图像。
Update:
能够弄清楚这一点,但仍然希望得到答复;
https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/cards/cards-reference
我想您“只能”使用他们的卡通过“传入网络钩子”发送数据,而我想使用的卡是“英雄卡”,因为数据是带有图形图像的警报,但是它是使用“连接器”时不支持:(
我找到了这个网站;
https://github.com/grafana/grafana/issues/13121
我已经使用了那里的示例,但是要求我必须将图片(base64 格式)发送到 S3,以便用户能够查看更大的图片。