首页 > 解决方案 > 我尝试从 slack 获取信息并使用 node-fetch 获取数据

问题描述

这是我想让我的机器人能够获取的数据。我对整个 node-fetch 事情并不是很好而且很陌生。 在此处输入图像描述

这是我尝试使用的代码,但是它只返回未定义的“笑话”。

let url = "https://icanhazdadjoke.com/slack";
        let joke;
        let permLink;
        fetch(url).then(res => res.json()).then(data => {
            joke = data.attachments.text;


            let embed = new MessageEmbed()
                .setAuthor("Random Dadjoke", message.guild.iconURL)
                .setColor(red_light)
                .addField("Joke:", joke)
                .addField("Permenent Link:","TEST")
                .addField("TEST:", "TEST")
                .setDescription("Here's your random joke :D")

            message.channel.send(embed);
            console.log("dadjoke.js");
        });

标签: javascriptnode.jsdiscord.jsnode-fetch

解决方案


这就是为什么在 json 中有一个数组,例如要恢复你必须这样做的文本:

data.attachments[0].text

而不是那个

data.attachments.text

推荐阅读