如何在 github 上隐藏不和谐令牌
Posted
技术标签:
【中文标题】如何在 github 上隐藏不和谐令牌【英文标题】:How to hide discord token on github 【发布时间】:2020-05-09 07:42:50 【问题描述】:我正在尝试制作一个 24/7 全天候在线的不和谐机器人。我正在使用 Heroku 来托管我的不和谐机器人。 Heroku 将我的代码上传到 github。但是,显然 github 和 discord 是合作的,并且 github 会检测何时在其上发布了 discord 令牌,并且 discord 会自动更改令牌。当令牌更改时,我无法使用我的机器人。
【问题讨论】:
我解决了,但它有点像贫民窟。是否有任何类似“真实”的方法,例如我的令牌是“abcdefg” const token = “bcdefg”; bot.login("a"+token); 好的,我通过将存储库设为私有来解决它。 您应该从单独的配置文件中获取此类数据——而不是硬编码到您的代码中。 我该怎么做 @RonaldLiu discordjs.guide/creating-your-bot/configuration-files.html 【参考方案1】:如 cmets 中所述,将您的令牌放在单独的配置文件中,并且不要将配置提交到 git 中(所以基本上将配置文件添加到 .gitignore 文件中)
config.json
"prefix": "!",
"token": "your-token-goes-here"
.gitignore
config.json
bot.js
const config = require('./config.json');
...
client.login(config.token)
编辑: 重要的是,您不要与其他人共享您的令牌,如果有人拿到您的令牌并且有一些恶意意图,他们可以对您的机器人做各种坏事。这是您阅读有关此内容的链接,以及为什么不应该不惜一切代价提供此令牌的原因。 https://github.com/reactiflux/discord-irc/wiki/Creating-a-discord-bot-&-getting-a-token
【讨论】:
也许我遗漏了一些东西,但假设有人想为您的机器人做出贡献并在他们自己的工作区中克隆 repo。如果 config.json 文件不在 repo 中,他们应该如何在没有令牌的情况下成功运行项目? 此时他们无法对其进行测试,如果您推倒想要贡献的人,您可以随时手动给他们 config.json。但我不会推荐这个。看看他解释令牌是什么的部分:github.com/reactiflux/discord-irc/wiki/…你永远不应该给别人你的机器人令牌! @SirPedr 他们应该从 Discord 获取自己的令牌并创建自己的配置。该项目可以包含一个 empty 模板配置文件(通常称为 config.example.json 或类似文件)来帮助解决这个问题。以上是关于如何在 github 上隐藏不和谐令牌的主要内容,如果未能解决你的问题,请参考以下文章