在github上上传其代码时,如何隐藏不和谐的bot令牌?

时间:2019-07-28 23:51:46

标签: javascript discord discord.js

我正在编码这个discordbot,并希望它在github上。我如何在不公开其令牌的情况下上传它?

const Discord = require('discord.js');
const client = new Discord.Client();
// Following is the part that matter, the code before is just to get some context 
const token = '[hidden for security reasons]'; 

我认为我应该将其放在单独的文件中,但是我不知道如何在index.js文件中引用它。

我该如何解决问题?

1 个答案:

答案 0 :(得分:2)

有很多方法可以从代码中获取机密信息。

最简单的方法可能是使用环境变量。 您可以例如在您的代码中使用它:

const token = process.env.DISCORD_TOKEN;

然后在调用脚本之前设置env变量(假设bash shell):

DISCORD_TOKEN=1234foobar1234 node myscript.js

为简化此操作,您可以使用dotenv之类的软件包:

require('dotenv').config();

const token = process.env.DISCORD_TOKEN;

然后,您可以在项目根目录中创建一个.env文件:
.env

DISCORD_TOKEN=1234foobar1234

(请记住将此文件添加到.gitignore以避免意外提交)