Client.loginの引数にトークンを書きたくない
DISCORD_TOKENという環境変数にトークンを設定する。
Windows
code:powershellの場合
$env:DISCORD_TOKEN="トークン"
code:コマンドプロントの場合
set DISCORD_TOKEN="トークン"
Linux/Mac
code:shell
export DISCORD_TOKEN="トークン"
上記の方法でclient.login()(引数には何も入れる必要がない)を実行するとうまくDiscordAPIに繋がる。
何がいいか
オープンソースでコードを公開している場合にトークンの漏洩を防ぐことができる。
質問するときにコードを全部コピペしてうっかりトークンごと送信するのも防げる。
注意
コマンドプロンプトやPowershellの場合ターミナルのタブを閉じると、DISCORD_TOKENの環境変数は消えてしまう。
予めファイルに書き出した環境変数を読み込むツール等を使うのがおすすめ
ただ結果的にファイルに書き出すことになるのでgitなどを使っている場合は除外する必要がある