Discord.js 如何使用 sqlite 快速发送消息作者
Posted
技术标签:
【中文标题】Discord.js 如何使用 sqlite 快速发送消息作者【英文标题】:Discord.js How to send message author in express using sqlite 【发布时间】:2020-05-24 11:38:13 【问题描述】:我一直在编写一个 discord 机器人,它允许您执行 !v 来创建一个快速页面,该页面使用随机生成的密钥将您的 Steam 帐户链接到您的 discord 帐户。到目前为止,除了将 steamid 插入 sqlite 表之外,一切都进行得很顺利。
我需要让代码获取发送 !v 命令的用户,并将 steamid 插入到该用户下的表中。这是我现在的代码:
app.get('/api/auth/:userid', steam.authenticate(), function(req, res)
sql.all(`SELECT * FROM info WHERE userid ="$message.author.id"`).then(rows =>
rows.forEach(function (row)
req.params( "userid": row.key )
res.redirect('/');
res.send(req.params);
)
)
);
app.get('/api/verify/', steam.verify(), function(req, res)
sql.get(`SELECT * FROM info WHERE userid ="$message.author.id"`).then(row =>
if (!row)
sql.run("INSERT INTO info (key, userid, name, steamid) VALUES (?, ?, ?, ?)", [rngkey.toString(), message.author.id, message.author.username, req.user.steamid]);
res.send(req.user).end();
).catch(() =>
console.error;
sql.run("CREATE TABLE IF NOT EXISTS info (key TEXT, userid TEXT, name TEXT, steamid TEXT)").then(() =>
sql.run("INSERT INTO info (key, userid, name, steamid) VALUES (?, ?, ?, ?)", [rngkey.toString(), message.author.id, message.author.username, req.user.steamid]);
);
);
);
This is what the table looks like
是否可以从身份验证页面获取 /:userid(rngkey),然后将 steamid 插入该密钥行?
【问题讨论】:
【参考方案1】:通过将该代码放在 client.on 中解决了我的问题,并且效果很好。
【讨论】:
以上是关于Discord.js 如何使用 sqlite 快速发送消息作者的主要内容,如果未能解决你的问题,请参考以下文章
无法安装 better-sqlite3 discord.js
我的 discord.js 机器人的 sql 没有/不能从我的 sqlite3 db 定义一个表