首页 > 解决方案 > 通过 Webhook 发送上传的图像

问题描述

我正在创建一个 Slack Bot,它将从数据源中获取所有指标并定期在频道中发布到 Slack。

我已经设法定期将我想用 Webhook 显示的数据发布到 Slack,但是我也想为我想要包含的指标发布折线图的图像。向 Block Kit JSON 文件添加示例性公共 url时,我可以发送消息。但是,当我尝试发布刚刚上传到 Slack 的图像(基本上用 Slack 给我的公共/私有 url 更改“image_url”)时,会导致以下错误:

ValueError: Request to slack 返回错误 400,响应为:invalid_blocks

我已经尝试了所有提供的 url 的 Slack,包括:url_private、url_private_download、permalink、permalink_public,但没有成功。我还使用了 files.SharedPublicURL 并将 URL 转换为公共 URL,但仍然有相同的错误消息。

块工具包 JSON

{
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "plain_text",
                "text": "Here's an image I'd like to post!",
                "emoji": true
            }
        },
        {
            "type": "image",
            "title": {
                "type": "plain_text",
                "text": "TestImage",
                "emoji": true
            },
            "image_url": "https://www.researchgate.net/profile/Hongtao_Yi/publication/308085943/figure/fig1/AS:420741989322752@1477324115445/Time-trend-of-target-completion.png",
            "alt_text": "TestImage"
        }
    ]
}

我尝试了不同的方法,例如在此处,但仍然遇到相同的错误。

标签: pythonslack-api

解决方案


推荐阅读