You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js机器人调用Tenor API时GIF富嵌入无法正常显示问题

问题根因

  • Post.itemurl是Tenor的GIF分享网页链接,不是GIF资源直链,Discord embed的image字段仅支持直接的资源文件链接,因此无法识别加载。
  • 之前尝试访问Post.media[0].itemurl报错,是因为tenorjs返回的媒体结构中没有itemurl属性,正确的GIF直链存储路径为Post.media[0].gif.url。

修复代码

只需要修改embed中image的url取值即可:

Tenor.Search.Query(msgArgs, "1").then(Results => {
    Results.forEach(Post => {
        // 遇到异常时可打开注释打印结构确认取值路径
        // console.log(Post.media[0].gif)
        message.channel.send({
            embed: {
                title: 'Women',
                color: 'c20d00',
                image: {
                    url: Post.media[0].gif.url,
                },
            },
        })
    });
}).catch(console.error);

补充说明

如果修改后仍然报错,可以先把Tenor初始化配置里的MediaFilter从minimal改为basic,再打印Post.media查看返回结构,确认gif直链的取值路径即可。

内容的提问来源于stack exchange,提问作者Tachanks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:45:01