Oauth2 application does not have a bot ошибка discord
В данном разделе приводится описание ошибок, возникающих при выполнении запросов в рамках протокола OAuth 2.0 и OpenId Connect 1.0.
В случае возникновения ошибок сервер возвращает информацию в двух полях:
- error - код ошибки.
- error_description - описание ошибки.
Далее будет представлена информация по кодам ошибок.
Ошибки конечной точки /authorize
invalid_request
В запросе не передан обязательный параметр, либо значения переданного параметра некорректно, либо параметр пристутствует в запросе несколько раз, либо весь запрос имеет неправильный формат.
Возможные причины
unauthorized_client
Возможные причины
unsupported_response_tpe
Тип ответа не поддерживается.
Указанный в запросе response_type не поддерживается.
Возможные причины
- В запросе указан параметр response_type со значениями отличными от
- code ,
- token ,
- id_token ,
- id_token token ,
- code id_token
- code token
- code id_token token .
invalid_scope
Неправильная область использования.
Возможные причины
login_required
Запрос не может быть выполнен в интерактивном режиме (с указанием параметра prompt со значением none ).
Возможные причины
- Запрос не может быть выполнен в неинтерактивном режиме, так как требуется аутентификация пользователя.
Ошибки конечной точки /token
invalid_request
В запросе не передан обязательный параметр, либо значения переданного параметра некорректно, либо параметр пристутствует в запросе несколько раз, либо весь запрос имеет неправильный формат.
Возможные причины
invalid_client
Не удалось осуществить аутентификацию клиента.
Возможные причины
invalid_grant
Разрешение, используемое клиентом, не является действительным.
Возможные причины
- Не передан параметр password в сценарии с использованием учётных данных владельца ресурсов.
- Сервер не настроен на обработку сценария с использованием учётных данных владельца ресурсов.
- Не удалось аутентифицировать пользователя по переданным username и password .
- Сценарий с использованием учётных данных владельца ресурсов не может быть использован для данной учётной записи пользователя из-за включенной вторичной аутентификации.
- Не передан код авторизации в сценарии с кодом авторизации.
- Переданный код авторизации истёк или не действителен.
- Переданный код авторизации был получен другим клиентом.
unauthorized_client
API Errors Discord – это достаточно распространенная категория ошибок, возникающих во время авторизации в приложении мессенджера. И в основном они связаны со сбоем, произошедшем на стороне разработчиков и серверов. Как правило, вины пользователей в подобных неполадках нет, а появляться они могут по разным причинам. Например, из-за слишком большой нагрузки, технических работ и попросту случайного бага. Но, как показывает статистика, программисты Дискорда быстро принимают меры для устранения ошибок и возвращают сервису былую работоспособность. Однако предлагаем ознакомиться с основными проблемами и способами их решения.
API Errors в Discord – какие бывают и почему возникают?
По доступной в интернете информации становится понятно, что API Errors – это ошибки, которые возникают во время авторизации в приложении мессенджера. И, что самое интересное, столкнуться с ними можно как на компьютере, так и на мобильном устройстве.
На самом деле существует несколько категорий багов, но наиболее часто встречаются только две:
Произошла ошибка API – что делать?
И первым делом нужно отметить, что самостоятельно устранить API Errors в Discord практически невозможно – от вас они попросту не зависят.
Мы рекомендуем следовать алгоритму, показывающему неплохие результаты (но только, если произошел не глобальный сбой):
- Пытаемся выполнить авторизацию в учетной записи посредством официального сайта, а не программы.
- Если ситуация не изменилась, то устанавливаем на смартфон мобильное приложение Discord. При его наличии и авторизации выполняем удаление программы, а затем повторную установку. Открываем приложение и входим в свой аккаунт.
- Если все работает, то авторизуемся и на компьютере. В противном случае, когда ничего не помогло, рекомендуем в настройках изменить сервер. Например, остановившись на наиболее ближайшем варианте.
Дискорд API Errors latency – что это? А под этим понимается очередная ошибка, связанная с авторизацией в приложении мессенджера. И ее уже никак не получится устранить самостоятельно – остается только ждать, пока разработчики примут меры. Если у вас не заходит в Дискорд, то API Errors latency наблюдается у многих пользователей.
Таким образом, мы рассмотрели основные Discord API Errors, встречающиеся в программе мессенджера. И, как правило, они связаны со сбоями на стороне разработчиков. Есть дополнительные вопросы по теме материала? Мы готовы на них ответить в комментариях!
После установки самого python'а (проверить правильность установки можно написав в консоли: "python -V", возможно потребуется перезагрузка) установим модуль discord.py ( https://discordpy.readthedocs.io/en/latest/ -это ссыль на официальную документацию), сделать это можно прописав в консоли: " pip install discord.py ". С установкой чего-либо окончено.
Теперь перейдем к Discord'у:
1. Создадим сам сервер:
2. Создадим текстовый канал "получение ролей" (название значения не имеет):
3. Добавим сами роли для выбора:
Я в данном случае создал две роли исключительно для примера:
4. Копируем и сохраняем в расширении .py файлы:
Q: как сохранить код в расширении .py?
A: используйте блокнот:
создаете новый файл, вставляете код, в левом верхнем углу: файл >> сохранить как
5. Не закрывая файлы переходим на сайт ( https://discordapp.com/developers ), регаемся, переходим во вкладку "Applications" и создаем новое приложение:
Далее называем его по любому, со всем соглашаемся.
Переходим во вкладку "Bot",
далее его можно как-либо назвать и поменять аватарку. После макияжа переходим во вкладку "OAuth2":
Пролистываем немного ниже:
В окне "SCOPES" выбираем "bot", во втором выбираем "Administrator", далее копируем и впоследствии переходим по ссылке, там все подтверждаем.
После авторизации переходим во вкладку "Bot" и копируем токен.
Далее открываем файл " config.py " созданный ранее и вместо надписи "тут токен" вставляем реальный токен. Хочется отметить то что токен меняется при смене имени бота и аватарки, если у вас появятся проблемы, стоит обратить внимание на токен.
Добавить реакции можно нажав пкм:
Далее копируем ID поста, кликнув пкм:
Перейдем к самим ролям, для этого копируем эмодзи из реакций (если вы из брали с ссайта который я оставлял выше то копируйте от туда, если вы их выбирали в ds то скопируйте их в ds и вставте на сайт и скопируйте оттуда) и вставляем в config в ординарных апострофах с двух сторон и через двоеточие указываем id роли, в конце строк (кроме последней) ставим запятые
Взять id можно кликнув пкм по названию роли.
В итоге должно получиться так:
в значении переменной "MAX_ROLES_PER_USER" указываем кол-во ролей которые может получить 1 юзер, значение "EXCROLES" оставляем пустым.
сохраняем config и code в одну папку в которой нет ничего кроме этих файлов и она названа по английски:
Далее в консоли прописываем: "cd <путь к файлу>"
"<метка тома диска на котором находится папка>"
вот так вот. Осталось поставить роль бота выше ролей которые вы будите выдавать. Иначе появится ошибка (Forbidden('403 Forbidden (error code: 50013): Missing Permissions')). Проверка прошла успешно!
Спасибо за внимание!
Программирование на python
218 постов 7.5K подписчика
Правила сообщества
Публиковать могут пользователи с любым рейтингом. Однако!
Приветствуется:
• уважение к читателям и авторам
• простота и информативность повествования
• тег python2 или python3, если актуально
• код публиковать в виде цитаты, либо ссылкой на специализированный сайт
Не рекомендуется:
• допускать оскорбления и провокации
• распространять вредоносное ПО
• просить решить вашу полноценную задачу за вас
Я редко конечно ставлю минусы но ставить питон из ms store. это дико, даже для меня
Зачем выдавать чужой код, за свой?
автора кода - Хаудиеще один конкурент "9 вите иташки"?
Правильно пишется "наподобие".
Хочу для себя изучить питон, что посоветуете? Смотрела курсы, не подошли. Как лучше изучать? Может, книга толковая есть?на первом этапе(python - V) выдало ошибку
Traceback (most recent call last):
NameError: name 'python' is not defined
у меня выдаёт ошибку
File "C:\Users\HP-PC\AppData\Local\Programs\Python\Python39\lib\site-packages\aiohttp\ connector.py ", line 938, in _wrap_create_connection
Хочешь нарисовать свою карту для D&D? Тебе к нам!
Добрый вечер постояльцам таверны и активны пользователям Пикабу!
В недавнем опросе в вконтакте, постояльцы отметили что у них есть желание научиться рисовать карты для их приключений! Очень рад этому :)
Поэтому я решил не останавливаться и завлечь как можно людей в данную атмосферу рисования.
Что это такое?
Данный пост - небольшая информация для дальнейшего рисования карт для D&D5e, ты же (Пикабушник) можешь присоединиться к нам и следить за будущими постами, а также принять участие в выборе первого туториала.
Может быть это масштабный континент? Забытая пещера? Решай сам!
Самый популярный запрос будет нарисован и разобран для обучения.
Что нужно для этого?
В группе Вконтакте не написано какие "инструменты" должны быть у художника (это будет в отдельном посте), но так как мы на Пикабу, то стоит все же рассказать.
Инструменты:
Листы Бумаги А4 или СкетчБук
Простой карандаш
Карандаш H
Карандаш HB
Карандаш 3B
Ластик
СтружилкаПрограммы:
Krita - покраска, добавление и создание своих токенов, эффекты и т.д.Ответы на вопросы
- Да, это бесплатно
- Как и где можно будет посмотреть туториал?
- Сам туториал будет проходить по Discord. Дата и время проведения будет в группе Вконтакте.
Также в группе будет выложена статья с этим же туториалом и на пикабу тоже :)
- Зачем показывать туториал и там и там? Почему не сразу создать статью?
- Первое. Появился вопрос или проблема? Спроси у картографа и получи решение!
Второе. Атмосфера. Вместе с вами такие энтузиасты как вы!
Я пытаюсь добавить Discord OAuth в мобильное приложение с помощью PKCE. Я могу успешно пройти аутентификацию с помощью DiscordAPI и получаю code обратно с сервера.
Я попробовал несколько подходов к получению моего токена, но все они провалились.
Я также попытался использовать объект StringContent , например так:
Оба эти результата в Bad Request
Попытка (2) с помощью RestSharp
Дополнительная информация:
Чтобы соответствовать PKCE, мне нужен code_verifier . Вот как я генерирую код. (Обратите внимание, я не пытаюсь использовать это как код авторизации.)
Я передаю результат как code_challenge , получая свой код авторизации.
Вот где я узнал, что PKCE был необходим.
Обновление:
Тем не менее, этот рабочий процесс PKCE недокументирован . Поскольку я потратил 500 баллов, я начисляю баллы тому, кто сможет разрешить рабочий процесс PKCE OAuth.
2 ответа
Вы делаете запрос на неправильный URL. Поток кода создается для предотвращения утечки клиентского токена. Поток выглядит следующим образом
- Клиент запрашивает код с сервера раздора
- Клиент отправляет этот код на ваш сервер
- Ваш сервер передает код на дискорд-сервер со своими секретами
- Сервер Discord отвечает обратно на настроенный redirect_uri, чтобы получить токен.
Примечание: есть 2 перенаправления uri, 1, который разрешает код, и другой, который разрешает токен.
Затем Discord ответит вашему redirect_uri коду и состоянию
Примечание. Исходный запрос на Авторизацию не содержит вашего клиентского секрета, клиентский секрет используется только с вашего сервера. Таким образом, только сервер может запросить AuthTokens Примечание. В большинстве мест, поддерживающих oauth, необходимо настроить URL-адрес перенаправления с сервера.
Примечание: состояние также будет возвращено с кодом, подтверждающим, что отправленное вами состояние является возвращенным.Возьмите возвращенный вам код (NhhvTDYsFcdgNLnnLijcl7Ku7bEEeee) и используйте запрос запроса токена, используя ваш оригинальный пример с правильным кодом:
Обратите внимание, что при отправке запроса на конечную точку токена вы используете
'Content-Type': 'application / x-www-form-urlencoded'
Если у вас все еще есть проблемы с потоком, используйте Postman, который имеет встроенную поддержку OAuth, и получите токен, посмотрите, что они отправляют с помощью fiddler, и эмулируйте его.
Ну, после некоторого исследования я мог бы иметь представление о том, что происходит. Вы пытаетесь получить токен на основе созданного вами кода авторизации?
Вы должны использовать этот код на этапе получения токена.
Я не знаю, если это что-то меняет, но я считаю, что в соответствии с документацией нет такого параметра, как "scopes", это должен быть "scope".
Читайте также: