Discord Bot Wiki搜索命令的代码突然停止

时间:2020-05-03 23:57:48

标签: javascript axios discord

请注意,我对javascript很不好,这是我第一次真正使它变得太过严肃。

我一直在开发一个discord机器人,该机器人可以替代我所在服务器中的WikiaLinker。我一直在重用WikiaLinker的代码,但是我注意到它使用了已弃用的请求库。我现在尝试使用axios,但是一旦到达代码中的某个点,它就会突然停止而不会给我任何错误。

我曾尝试弄乱我的axios代码,但是在故障排除中,我注意到它可以很好地通过我的axios代码,但稍后会停止工作。相同的代码正在处理请求,因此我不确定为什么它会被axios破坏。

            const mps = [''];
            const removeCodeblocks = msg.cleanContent.replace(/`{3}[\S\s]*?`{3}/gm, '');
            const removeInlineCode = removeCodeblocks.replace(/`[\S\s]*?`/gm, '');
            const cleaned = removeInlineCode.replace(/\xFE/g, '');

            const name = cleaned.replace(/.*?s\!search([^\]|]+)/g, '$1\xFE');
            const allLinks = name.split('\xFE').slice(0, -1);
            const unique = new Set(allLinks);

            unique.forEach((item) => {
                mps.push(reqAPI(item.trim()).catch(console.error));
            });

            Promise.all(mps)
                .then(preparedSend => {
                    preparedSend = preparedSend.filter(item => item !== undefined);
                    if (preparedSend.length > 1) {
                        // do message sending related stuff stuff
                    }
                })
                .catch(console.error);
        };

reqAPI常量是

            axios({
                method: 'GET',
                url: `https://example.fandom.com/api/v1/Search/List?query=${requestname}&limit=1`,
                json: true
            });
        });

(请注意,真正的链接是针对特定粉丝网站的,而不是example.fandom.com)

它在Promise.All(mps)之后立即停止,但是在运行之前所有的代码都已结束。

0 个答案:

没有答案