Node.js 图像链接URL使用slack rtm API显示每个图像的两个副本

Node.js 图像链接URL使用slack rtm API显示每个图像的两个副本,node.js,slack,slack-api,Node.js,Slack,Slack Api,下面是我们正在使用的代码,它在大约一周前还工作得很好: rtm.sendMessage(“,currentchannel) 直到大约一周前,这种类型的图像才会展开并仅显示图像的一个副本。现在我们得到了两个图像展开的副本。展开图像的第二个副本略微缩进,并带有一条注释(已编辑),即使未进行编辑。有什么想法吗 附加说明:当使用chat.postMessage而不是RTMAPI时,也会出现同样的问题 问题: 两件大事: 您应该使用chat.postMessage()而不是rtm.sendMessage(

下面是我们正在使用的代码,它在大约一周前还工作得很好:

rtm.sendMessage(“,currentchannel)

直到大约一周前,这种类型的图像才会展开并仅显示图像的一个副本。现在我们得到了两个图像展开的副本。展开图像的第二个副本略微缩进,并带有一条注释(已编辑),即使未进行编辑。有什么想法吗

附加说明:当使用chat.postMessage而不是RTMAPI时,也会出现同样的问题

问题: 两件大事:

  • 您应该使用
    chat.postMessage()
    而不是
    rtm.sendMessage()
    。你这样做是对的,但是如果你想解决这个问题,你需要坚持下去——从文档:
    • :RTM API仅支持发布使用默认消息格式模式格式化的简单消息。它不支持附件或其他邮件格式模式

    • :simple意味着它不能发送包含附件或块的消息,但可以包含文本、提及和展开的链接

  • 您发送的是纯文本消息,而不是附件、图像块或其他类型的富媒体消息。
    • 这本质上与用户将图像URL粘贴到松弛通道中的效果相同。在大多数情况下,slack将“展开”图像
    • 我不是100%确定它在展开后显示为“已编辑”,但我猜测Slack会将“展开”视为对原始邮件的编辑,并且他们试图表示他们(在Slack中)编辑了邮件以展开它。双映像可能是暂时的故障,也可能是缓存问题,Slack正在为缓存版本提供服务,然后使用新版本进行更新
  • 正确的解决方案: 要解决这两个问题,您需要使用
    chat.postMessage()
    或传入的webhook发送消息,并将图像作为或包含在(推荐)中。这些文档非常详细地介绍了这一点,您甚至可以使用它们的内容,这让您可以预览如何根据将通过API发送的JSON负载(或传统格式)显示消息

    为了让您在最短的时间内到达目的地,发送图像所需的最小JSON负载。在代码中:

    chat.postMessage({
    “区块”:[
    {
    “类型”:“图像”,
    “图像url”:https://cdn3.vectorstock.com/i/1000x1000/28/72/set-of-art-calligraphy-letter-i-with-flourish-of-vector-13972872.jpg",
    “alt_文本”:“书法,字母I”
    }
    ]
    },当前频道);
    

    这可能更适合查看松弛的API文档?如果代码以前工作过,那么您询问的是第三方的响应,这超出了本论坛的范围。