Как сделать авторизацию через дискорд?
Какой код надо в register.php чтобы перекинуло на спец ссылку где он подтверждает вход через дискорд (вводя свой логин \ пароль)
Как это выглядит: Юзер зашедший на сайт видит кнопку «создать сервер» нажимая туда его на спец ссылку, если он не имеет cookie с логином паролем от дискорда > тогда его попросят ввести логин \ пароль, если он имеет cookie с логином \ паролем то его закинет к кнопке «Авторизовать»
spoiler

- Вопрос задан более года назад
- 492 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 1

https://code.patriotovsky.ru/
Достаточно авторизовать пользователя через OAuth2 протокол: https://discord.com/developers/docs/topics/oauth2
Ответ написан более года назад
Нравится 2 6 комментариев
shaesnow @shaesnow Автор вопроса
раз достаточно то напиши как это настроить все, ведь тему создают не только чтобы услышать чего достаточно.
shaesnow, так вы прочитайте что написано в доке, если не понимаете, то вам дорога на фрилансер. Никто за бесплатно вам вашу работу делать не будет, раз вы не можете осилить документацию.

Модератор @TosterModerator
shaesnow, внимательно прочтите Регламент. Тут так не работает. Вы обязаны показать свою попытку решения проблемы, дать пояснения, что на входе, что ожидали на выходе, и что получили. Тогда, возможно, вам помогут. А так — это не вопрос, а задание.
Авторизация в Discord

Войти в Дискорд может только владелец зарегистрированной учётной записи в этом самом мессенджере. Исключение из правил, пожалуй, одно единственное: деморежим входа без учётки только с указанием ника (но и то особенно не в счёт, поскольку носит временный характер).
Так что если вы юзер-новичок в серверных пространствах Discord, но у вас уже есть аккаунт, вам будет полезно знать о всяких особенностях входа в мессенджер. Данному вопросу, собственно, и посвящена статья.
Стандартная авторизация
На компьютере
На ПК разработчики предусмотрели вход двумя способами. Какой из них удобней, вам подскажет пользовательская практика.
Способ №1: в браузере
Веб-версия позволяет пользоваться Дискордом без скачивания и установки приложения. Доступ к профилю предоставляется на официальном сайте:
1. Откройте главную страничку ресурса – https://discordapp.com/
2. В панели вверху справа кликните мышкой «Вход».

3. Введите учётные данные: адрес почтового ящика, указанного в регистрационной форме, и пароль.

4. Клацните по кнопке «Вход».
Всё! Добро пожаловать, в свой родной и любимый профиль.
Примечание. Некоторые браузеры с настройками по умолчанию предлагают сохранить логин/пароль учётки. Если согласиться с этим запросом, последующие авторизации выполняются в автоматическом режиме. Но помните, что такой режим входа безопасен, если только вы пользуетесь компьютером. В противном случае, есть риск того, что в вашу учётку могут зайти посторонние.

Способ №2: в приложении
Фактически ничем не отличается от входа на сайте. Предварительно нужно скачать с офсайта мессенджер и установить его в систему. После запуска в окне программы набрать логин и пароль.
А если в процессе инсталляции Discord в браузере открыта вкладка с профилем, то и заполнять форму входа, чтобы зайти, не нужно. Приложение сделает это автоматически: возьмёт учётные данные из браузера.
При последующем запуске (после авторизации) мессенджер сразу открывает аккаунт. То есть снова набирать адрес почтового ящика и символьный ключ уже не нужно будет, если вы не выходили из учётной записи.
На телефоне
Для популярных мобильных платформ (Android, iOS) есть адаптированные версии Discord. Мессенджер легко найти через опцию поиска в официальных магазинах приложений (App Store, Google Play). Установите и запустите его.
Далее требуется всё та же стандартная процедура: ввод электронной почты и пароля.

Двухфакторная аутентификация
Двухфакторная аутентификация – это авторизация с повышенным уровнем защиты, состоящая из двух этапов верификации пользователя: 1 – отправка учётных данных; 2 – ввод проверочного кода, сгенерированного в специальном стороннем приложении.
Этот режим позволяет уберечь аккаунт мессенджера от злодеев-взломщиков с двойной гарантией. Даже если кто-то и заполучит логин и пароль учётки, зайти у него всё равно не получится без кода. То есть для несанкционированного доступа преодолеть второй этап защиты крайне проблематично (кстати, на радость владельцу профиля!).
Чтобы авторизовываться в Дискорде посредством двухфакторной аутентификации, понадобиться выполнить следующее:
Внимание! Для настройки нужен телефон.
1. Войти в аккаунт. Перейти в настройки на вкладку «Моя учётная… ». Кликнуть кнопку «Включить двухфакторную… ».

2. Ознакомиться с этапами подключения. Оставить вкладку открытой с этой панелью.
Далее действовать в зависимости от выбранного приложения для аутентификации:
Способ №1: Authy
1. Проинсталлируйте приложение Authy на мобильный с официального магазина и запустите.

2. Укажите код страны и номер телефона.
3. Введите адрес действующего почтового ящика (адрес email).
4. Выберите способ подтверждения указанного номера: смс-сообщение или звонок. Наберите полученный код.

5. Дважды напечатайте пароль для входа в приложение Auth. Тапните «Enable Backups».
6. Активируйте опцию Scan QR Code.

7. Наведите камеру телефона на QR-код, отображённый на вкладке браузера в настройке аутентификации, и просканируйте его.

Внимание! Если нет возможности получить QR-код через камеру телефона, задействуйте опцию приложения «Enter key manually». Вручную наберите в интерфейсе Auth код, размещённый в профиле, в графе настройки «КОД 2FA (ручной ввод)».
8. Как только будет выполнена привязка учётки мессенджера, в приложении укажите логин (ник для Auth).

10. Сгенерированный код введите в настроечной панели Дискорда, в строке «Войти с вашим кодом». И кликните «Активировать».

Обратите внимание! После подключения 2FA система мессенджера предоставляет резервные коды на тот случай, если у вас вдруг не будет доступа к телефону (потеряли, украли, где-то забыли). Заблаговременно скачайте их на компьютер для подстраховки. Каждый код можно использовать только один раз. После ввода возле ключа подсвечивается окошко.

Теперь протестируйте двухэтапную систему входа (повторно авторизуйтесь):
1. Введите email (логин) и пароль. Клацните «Войти».
2. В телефоне откройте приложение Auth, сгенерируйте код. Затем введите его в панели Discord.

Если же верификационный код получить не удаётся, воспользуйтесь резервным ключом.
Способ №2: Google Authenticator
Интеграция Discord с приложением Google Authenticator для аутентификации осуществляется примерно таким же образом:
1. Предварительно подготовьте в аккаунте мессенджера панель подключения 2FA.
2. Установите и запустите Google Authenticator на телефоне.
3. Выберите способ добавления аккаунта: сканирование штрих-кода или ввод ключа.

4. Просканируйте камерой QR-код в учётке Дискорда или введите вручную ключ (в зависимости от выбранного способа).
5. Тапните «Добавить аккаунт». Полученный код введите в профиле мессенджера (строка «войти с вашим кодом») и кликните «Активировать».
Как авторизоваться, если нет пароля
Если вдруг забудете, потеряете пароль, не спешите паниковать и прощаться с аккаунтом. В Дискорде, как и в других онлайн-сервисах, для таких ситуаций есть специальный сценарий авторизации.
Для входа без пароля сделайте следующее:
1. В форме для авторизации введите логин (адрес почтового ящика, указанного в учётной записи).
2. Кликните ссылку «Забыли пароль?».

3. Зайдите на email, откройте сообщение сервиса. В тексте щёлкните кнопку «Сбросить пароль».

4. Следуйте подсказкам техподдержки, чтобы завершить восстановление доступа к аккаунту.
Вход на сервера Дискорда других пользователей
Для подключения к серверу другого пользователя прежде всего нужно авторизоваться в своём аккаунте и пройти по специальной ссылке.

На страничке открывается приглашение для всех входящих пользователей. Чтобы войти на сервер, нужно нажать кнопку «Принять… ».
Вот и все способы входа в систему мессенджера. Найдите для себя какое-то одно наиболее удобное решение. Либо применяйте все доступные в зависимости от ситуации. Главное – чтобы любимый Дискорд всегда был под рукой.
Авторизация через Discord на PHP

Если у вас есть проект, у которого есть и сайт и сервер в Discord, вам для сайта может понадобиться авторизация через Discord. Это крайне полезно в случаях, когда нужно получить и сохранить в БД Discord ID пользователя, чтобы в дальнейшем выполнять с ним действия через ваш бот. Например вы сможете автоматически назначать роль участнику сервера, согласно его роли на сайте и многое другое, о чем я рассказал в отдельной статье. А в этой статье я покажу, как без особого труда сделать такую авторизацию через Discord на PHP.
Для тестов создайте на вашем сайте отдельный php скрипт, через который будет происходить авторизация, например discord-connect.php . Далее нам понадобится создать приложение в Discord Developer Portal. Теперь зайдите в ваше приложение и перейдите в раздел Oauth2, скопируйте CLIENT ID, сгенерируйте и скопируйте CLIENT SECRET, пропишите их в переменные вашего скрипта:
Ниже в разделе Redirects вашего приложения, вставьте полную ссылку до вашего discord-connect.php и сохраните изменения.
Добавим в скрипт переменные с необходимыми ссылками, которые потребует авторизация через Discord:
$script_url = 'https://example.com/discord-connect.php'; // ссылка до вашего скрипта // ссылки oauth и api discord $oauth_url = 'https://discord.com/api/oauth2/authorize'; $token_url = 'https://discord.com/api/oauth2/token'; $api_user_url = 'https://discord.com/api/users/@me'; $revoke_url = 'https://discord.com/api/oauth2/token/revoke';
Также добавим в наш скрипт функцию для api запросов в Discord:
function api_request($type, $url, $data = array(), $token = null) < $ch = curl_init($url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $type); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $headers[] = 'Accept: application/json'; $headers[] = 'Content-Type: application/x-www-form-urlencoded'; if ($token != null) $headers[] = 'Authorization: Bearer '.$token; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); return json_decode(curl_exec($ch), true); >
Авторизация через Discord будет работать следующим образом: при редиректе пользователя на этот скрипт, он будет перенаправляться на страницу авторизации Discord, после чего снова произойдет редирект на этот скрипт, но уже с кодом авторизации, который мы сразу же используем, чтобы получить информацию о пользователе через api. Ниже представлен основной код с комментариями.
if (isset($_GET['code'])) < // это условие сработает при редиректе от Discord после авторизации $code = htmlspecialchars($_GET['code']); // получаем код авторизации // готовим api запрос $data = [ 'client_id' =>$client_id, 'client_secret' => $client_secret, 'grant_type' => 'authorization_code', 'code' => $code, 'redirect_uri' => $script_url, ]; $res = api_request('POST', $token_url, $data); $token = $res['access_token']; // получаем токен $user = api_request('GET', $api_user_url, [], $token); // запрашиваем данные о пользователе var_dump($user); // массив данных // например так мы получим user_id пользователя: $user_id = $user['id']; // далее вы можете записать этот user_id в БД, а также выполнять любые другие действия с данными // если вам нужно было только получить и сохранить user_id для бота, вы при желании можете отозвать токен авторизации: api_request('POST', $revoke_url, $data); // после всех действий вы можете перенаправить пользователя куда нужно, например в профиль: header('Location: /profile'); > else < // запускаем авторизацию через Discord $data = [ 'client_id' =>$client_id, 'redirect_uri' => $script_url, 'response_type' => 'code', 'scope' => 'identify' ]; header('Location: '.$oauth_url.'?'.http_build_query($data)); >
На этом статья об авторизации через Discord подошла к концу, ведь здесь все довольно просто. Желаю вам удачи с реализацией!
- Следующий пост Создаем слэш команды в Discord на PHP
- Предыдущий пост Alexell – Terra Incognita
Как добавить игру Discord

Любители поиграть в VoIP-мессенджере часто спрашивают, как добавить игру в Дискорд, какие функции доступны и можно ли менять название. Отдельного внимания заслуживают ошибки, которые могут появиться при попытке загрузить или установить приложение.
Как добавить игру в Discord
Для начала отметим, что доступная ранее библиотека игр Nitro больше не доступна для подписчиков. Изменения произошли с 15 октября 2019 года. Теперь в игры, полученные из этой библиотеки, играть нельзя даже в том случае, если они были установлены ранее.
В остальном ситуация не изменилась. При этом пользователи должны знать, как добавить игру в библиотеку Discord, а впоследствии правильно в нее играть.
Алгоритм действий такой:
- Войдите в программу Дискорд.
- Жмите на символ шестеренки внизу.


На последнем этапе переведите тумблер отображения в правую сторону.
Как изменить название
Пользователи часто спрашивают, как поменять название игры в Дискорде. Если она подтверждена на аккаунте, сделать это невозможно. Изменения можно осуществлять еще до загрузки, если такая опция предусмотрена разработчиком. В ином случае эта опция недоступна.
Как играть
Программа Дискорд предлагает клиентам много опций. Кратко рассмотрим их особенности.
Go Live
С помощью этой функции можно заняться стримингом на голосовом канале. Эту опцию можно добавить и использовать на ПК с Виндовс 8 или 10. Просмотр стримов доступен с приложения на компьютере или веб-версии в проводнике Хром. В мобильном варианте программы такая опция пока недоступна.
Для включения Go Live необходимо добавить игровое приложение в Дискорд по принципу, который рассмотрен выше. Обязательное условие — его распознавание системой. После этого рядом с названием появляется символ компьютера со значком видеокамеры. В этом случае выберите, что именно вы будете стримить, и укажите канал. Далее жмите на кнопку Прямой эфир, после чего появляется небольшое окно с изображением.
Перед тем как играть в Дискорде, сделайте некоторые настройки. Выделим основные:
- Установите разрешение. Для всех подписчиков доступно 720 р и 32fps, а для подписчиков Nitro — 4К и 60 fpx.
- Пригласите друзей. Для этого можно воспользоваться ссылкой-приглашением на канал.
- Установите права доступа. Перейдите в настройки сервера, а далее в раздел Роли, где легко открыть доступ к игре Дискорд другим пользователям. Эти параметры можно менять напрямую в настройках канала через вкладку Права доступа.


Для просмотра стрима жмите на значок возле ника друга. Наличие такого символа позволяет понять, что эфир уже запущен. При желании можно включить опцию Pop Out для открытия стрима в отдельном окне.
Оверлей
Если вы решили добавить игру в Дискорд, можно объединить оба чата (текстовый и голосовой) для максимальной эффективности. Для включения опции оверлей сделайте такие шаги:
- Жмите на шестеренку внизу (настройки).
- Выберите раздел Оверлей.


В дальнейшем можно общаться с другими пользователями в голосовом и текстовом формате. В процессе игры доступно изменение размера и перемещение окна чата, звонки друзьям, получение уведомлений о приходе текстовых сообщений и звонках.
Учтите, что некоторые антивирусные системы могут срабатывать на оверлей, поэтому необходимо добавить Дискорд в белый список защитного ПО. Если приложение вылетает или имеют место скачки пинга, отключите оверлей. Для этого:
- войдите в настройки пользователя;
- перейдите в раздел Игровая активность;
- отключите оверлей для проблемной игры.
После этого можно спокойно играть и не переживать о сбоях.
Как удалить отображенные игры
Бывают ситуации, когда пользователь хочет очистить список игровых приложений. В такой ситуации необходимо знать, как в Дискорде убрать отображение игры. Для этого сделайте следующие шаги:
- войдите в приложение и жмите на символ шестеренки слева внизу;
- перейдите в раздел Игровая активность;
- найдите пункт Отображать в статусе игру, в которую вы сейчас играете;
- переведите его в левую сторону.

В этом случае информация будет скрыта для других пользователей. В дальнейшем эту опцию легко включить (при необходимости).
Ошибки и их решение
При попытке добавить или установить игру могут возникнуть некоторые ошибки. Рассмотрим их причины и решение:
- 2022 — недостаточно места на жестком диске для обновления или установки. Удалите старые мемы или храните их на диске с большим объемом памяти.
- 2023 — закрыт доступ к диску из-за неправильного указания пути. Для решения выберите путь с разрешением на установку или измените его, чтобы можно было добавить Дискорд.
- 2058 — частые попытки обращения к API. Попробуйте закрыть и открыть программу, разблокируйте домен в настройках сети.
- 2064 — не удается обновить файл. Для решения перезапустите ПК и Дискорд, отключите на время антивирусное ПО. Проверьте, через Диспетчер задач, что игра не запущена.
- 2069 — проблемы с API Дискорд. Выждите пять минут и перезапустите игровое приложение.
- 2074 — трудности с удалением игры. Попробуйте убрать их вручную и перезапустите Дискорд.
- 2076 — обновление нескольких клиентов одновременно. Для решения проблемы желательно использовать одну версию программы.
Если ничего не помогает или не удается добавить приложение в Дискорд, всегда можно написать в службу поддержки по ссылке support.discordapp.com/hc/ru/requests/new?ticket_form_id=360000029212.

Итоги
Зная, как добавить и настроить игру в Дискорд, вы значительно расширяете возможности приложения. С помощью дополнительных опций можно организовать стрим и сделать просмотр доступным для других пользователей. Если же не удается добавить игру и возникают ошибки, их всегда можно исправить с помощью указанных выше шагов или путем обращения в службу поддержки.