首页 > 解决方案 > Javascript discord.js 使用 unirest.get 存储到变量中

问题描述

我从 JosticeMan 的 Battlemetrics Bot 中获得灵感(位于此处:https ://github.com/JosticeMan/BattlemetricsBot )

这是我在我的机器人中运行的代码:

unirest.get("https://api.battlemetrics.com/servers/2611089")
                .end(function (result) 
                    {
                        //console.log(result.status, result.headers, result.body);
                        var json = JSON.parse(JSON.stringify(result.body));
                        if(result.status != 200) 
                            {
                            message.reply("An error occurred while trying to make the API request to battlemetrics.net!");
                            } 
                        else 
                            {
                            message.channel.send(">>> \n" +
                                                    "**Name**:\n \t" + json.data.attributes.name + "\n" +
                                                    "**Server IP**:\n \t" + json.data.attributes.ip + ":" + json.data.attributes.port + "\n" +
                                                    "**Battlemetrics Rank**:\n \t" + json.data.attributes.rank + "\n" +
                                                    "**Status**:\n \t" + json.data.attributes.status + "\n" +
                                                    "**Players**:\n \t" + json.data.attributes.players + " / " + json.data.attributes.maxPlayers + "\n");
                            }
                    });
            unirest.get("https://scumservers.net/api.php?ip=176.57.135.30&port=28000")
                .end(function (result) 
                    {
                        //console.log(result.status, result.headers, result.body);
                        var json = JSON.parse(JSON.stringify(result.body));
                        if(result.status != 200) 
                            {
                                message.reply("An error occurred while trying to make the API request to scumservers.net!");
                            } 
                        else 
                            {
                            message.channel.send(">>> " +
                                                    
                                                    "**Time**:\n \t" + json.serverTime + "\n" +
                                                    "\t__Note__: time is sourced from scumservers.net - *this only updates every 10 minutes*\n");
                            }
                    }); 

这运行正常,信息显示在您所期望的两条消息中。

有没有办法收集每个 unirest.get 的结果,然后将其存储到一个变量中,以便稍后提取数据以将两者合并到一个消息中?

标签: javascriptdiscord.js

解决方案


推荐阅读