← Все вопросы

Где правильно хранить токен Discord-бота, чтобы не спалить его в коде?

Задан 13 месяцев назад844 просмотров2 ответа
8

Понял, что нельзя писать токен прямо в bot.run('...'), особенно если выкладываешь на GitHub. Но тогда где его держать? Как сделать, чтобы код можно было показать другу, а токен остался секретным?

2 ответа

13
✓ Принятый ответ — помог автору

Стандартный способ — файл .env + библиотека python-dotenv:

  1. Поставь: pip install python-dotenv.
  2. Создай файл .env рядом с кодом:
DISCORD_TOKEN=твой_длинный_токен
  1. В коде читай его из окружения:
import os
from dotenv import load_dotenv

load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')

bot.run(TOKEN)
  1. Самое важное — добавь .env в файл .gitignore, чтобы он НЕ попал в git:
.env

Теперь код можно спокойно выкладывать: токен лежит в .env, который остаётся только у тебя.

5

Если токен всё же случайно засветился — немедленно иди в Developer Portal → Bot → Reset Token. Старый сразу станет недействительным. Discord и сам сканирует публичные репозитории и часто сбрасывает засвеченные токены автоматически, но лучше не доводить.

Ваш ответ

Войдите, чтобы ответить на вопрос.