我在discord.js中遇到问题:即使在文档中提供了“ client.token”,它也不起作用。好吧,我可以像以前一样复制并粘贴实际的令牌,但是可以说我想使我的代码开源。我的机器人托管在Heroku上,我听说有一种隐藏令牌的方法,我什至尝试这样做,但是当您在本地运行机器人时,似乎不起作用-仅当机器人托管时。有时我只需要在本地运行我的机器人,但是总是从Heroku隐藏令牌更改为实际的“字符串”令牌是不方便的。有一种通用的隐藏令牌的方法吗?
我尝试编写“ client.user.token”(很傻,但是我必须尝试)和“ var”而不是“ const”(请参见下面的代码)。还尝试console.log它-输出为“空”。
const token = client.token;
console.log(token); // "null"!
// ...some other code stuff
client.login(token);
该机器人应该读取令牌并登录,但出现此错误:(node:2080) UnhandledPromiseRejectionWarning: Error: An invalid token was provided.
答案 0 :(得分:0)
您可以使用 .env 文件,该文件会使令牌对任何人都隐藏。
步骤:
打开您的bot文件夹。
在代码编辑器中创建一个名为“ .env”的新文件
写入:令牌:“在此处插入令牌”
打开您的主文件,然后输入client.login函数:“ process.env.token” 就是这样。
If you didn't understand something click me.
抱歉,对于这个错误的解释,我有点累了,是的,只需将其部署到Heroku,它将在本地和Heroku中都可以使用。
如果我帮助过您,请将其标记为 answer ,谢谢<3
答案 1 :(得分:0)
我认为您设置的.env文件错误。应该是
KEY=variable
例如:
#.env
TOKEN=m1i1m312im
#app.js
token = process.env.TOKEN
client.login(token)
答案 2 :(得分:0)
返回<form class="col-md-6" (ngSubmit)="onSubmit(f)" #f="ngForm">
<div class="form-group">
<div class="input-group mb-2">
<div class="input-group-prepend">
<div class="input-group-text">First Name</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroup" name="firstname" ngModel required>
<span *ngIf="f.form.controls.firstname?.touched && !f.form.controls.firstname?.valid" style="color: red;">A is required.</span>
</div>
</div>
<div class="form-group">
<div class="input-group mb-2">
<div class="input-group-prepend">
<div class="input-group-text">Last Name</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroup" name="lastname" ngModel required>
<span *ngIf="f.form.controls.lastname?.touched && !f.form.controls.lastname?.valid" style="color: red;">A is required.</span>
</div>
</div>
<div class="form-group">
<div class="input-group mb-2">
<div class="input-group-prepend">
<div class="input-group-text">Email</div>
</div>
<input type="text" class="form-control" id="inlineFormInputGroup" name="email" ngModel required>
<span *ngIf="f.form.controls.email?.touched && !f.form.controls.email?.valid" style="color: red;">An email is required.</span>
</div>
</div>
<button type="submit" class="btn btn-primary" [disabled]="!f.form.valid">Search</button>
</form>
的原因是因为您首先没有提供令牌,<img className="map" src="map.jpg"></img>
<img className="mission" src="mission.jpg"
style={{react.js part setting top and left}}></img>
.board {
position: relative;
height: auto;
width: 100%;
float: left;
}
.mission {
position: absolute;
height: 10%;
width: auto;
}
返回机器人已主动登录的令牌,您需要提供。当您运行null
并在Discord开发人员门户上找到令牌时设置client.token