【发布时间】:2021-06-07 21:29:50
【问题描述】:
我正在尝试在 Discord.JS v12 中创建一个 eval 命令。除了当我将命令与嵌入一起使用时输出返回undefined 之外,该代码运行良好。这是我的代码:
const { inspect } = require("util")
if (message.author.id != "id here")
return message.channel.send("cant use this");
try {
var result = args.join(" ").slice(5);
let noResultArg = new Discord.MessageEmbed()
.setColor("#e31212")
.setDescription("ERROR: No valid eval args were provided")
if (!result) return message.channel.send(noResultArg)
let evaled = eval(result);
console.log(result);
let resultSuccess = new Discord.MessageEmbed()
.setColor("#8f82ff")
.setTitle("Success")
.addField(`Input:\n`, '```js\n' + `${args.join(" ").slice(5)}` + '```', false)
.addField(`Output:\n`, '```js\n' + evaled + '```', true)
message.channel.send(resultSuccess)
} catch (error) {
let resultError = new Discord.MessageEmbed()
.setColor("#e31212")
.setTitle("An error has occured")
.addField(`Input:\n`, '```js\n' + `${result}` + '```', false)
.addField(`Output:\n`, '```js\n' + `${error.message}` + '```', true)
//.setDescription(`Output:\n\`\`\`${err}\`\`\``)
return message.channel.send(resultError)
}
【问题讨论】:
-
eval根本不应该被用户输入信任。
标签: javascript node.js discord discord.js