Download the PHP package ichinya/laravel-socialite without Composer
On this page you can find all versions of the php package ichinya/laravel-socialite. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ichinya/laravel-socialite
More information about ichinya/laravel-socialite
Files in ichinya/laravel-socialite
Package laravel-socialite
Short Description Socialite for Laravel
License MIT
Homepage https://github.com/ichinya/laravel-socialite
Informations about the package laravel-socialite
Laravel Socialite Helper
Пакет добавляет готовый OAuth-вход для Laravel через laravel/socialite:
- маршруты
/socialite/{driver}/redirectи/socialite/{driver}/callback; - таблицу
social_accountsдля привязки провайдера к пользователю; - автоматическую авторизацию существующего пользователя или создание нового;
- привязку дополнительного провайдера для уже авторизованного пользователя;
- generic hook для кастомного redirect screen без правки vendor-кода.
Требования
- PHP
^8.3|8.4|8.5 - Laravel
^12.25|^13.1 laravel/socialite
Установка
Как работает flow
- Гость переходит на
socialite.redirect. - Пакет создаёт provider через
Socialite::driver($driver). - Если для драйвера настроен
redirect_hooks, пакет даёт hook-классу шанс вернуть кастомный response. - Если hook не настроен, вернул
null, сконфигурирован неверно или завершился ошибкой, пакет делает fallback к штатному provider response. - На callback пакет связывает
driver + identityс пользователем и выполняет login/bind flow.
Локальная разработка пакета через path repository
Если пакет разрабатывается локально внутри Laravel-приложения:
Ожидаемый результат проверки: dist: [path] packages/ichinya/laravel-socialite.
Чтобы вернуться к обычной версии из registry:
Настройка config/socialite.php
Ключи конфига
drivers: активные провайдеры в форматеdriver => icon_path.redirect_hooks: картаdriver => class-stringдля container-resolved hook-классов.stateless_drivers: драйверы, для которых нужно->stateless().redirects.after_login: редирект после login flow.redirects.after_bind: редирект после bind flow.redirects.on_error: редирект при ошибке OAuth. Поддерживает путь иroute:<name>.
Generic redirect hook
Hook нужен для custom redirect screen, когда provider на этапе redirect() отдаёт HTML, legacy widget или другой нестандартный ответ, а приложению нужен собственный wrapper screen.
Hook-класс должен реализовывать Ichinya\LaravelSocialite\Contracts\RedirectHook:
Hook получает lazy callback $fallback, если приложению нужно вручную вернуть исходный provider response без преждевременного вызова redirect().
Что может вернуть hook
Illuminate\Http\ResponseIlluminate\Http\RedirectResponseSymfony\Component\HttpFoundation\RedirectResponsestringnull
Fallback semantics
- hook не настроен: пакет ведёт себя как раньше;
- hook сконфигурирован на несуществующий класс или класс с неверным контрактом: ошибка логируется, затем выполняется fallback;
- hook вернул
null: используется штатный provider response; - hook выбросил исключение: ошибка логируется, затем выполняется fallback;
- hook не должен заменять callback/login flow, он влияет только на этап
redirect.
Диагностика
В логах ищите:
DEBUGна resolve hook поdriver;DEBUGна fallback послеnull;WARNна отсутствующий hook-класс;ERRORна exception внутри hook или ошибке container resolution;INFOна successful custom response.
Настройка config/services.php и .env
Google / GitHub
Telegram
Для Telegram нужен socialiteproviders/telegram.
Пример регистрации Telegram provider:
Связь в модели User
После этого доступна связь:
Маршруты пакета
GET /socialite/{driver}/redirect(socialite.redirect)GET /socialite/{driver}/callback(socialite.callback)
Обработка ошибок на login screen
При ошибке OAuth пакет редиректит на socialite.redirects.on_error и кладёт текст ошибки в ключ socialite.
Частые проблемы
Invalid state
Добавьте драйвер в stateless_drivers:
Bot username required
Проверьте services.telegram.bot и TELEGRAM_LOGIN_BOT_NAME.
Mixed Content
Проверьте:
APP_URL=https://...- доверие к proxy-заголовкам в Laravel и веб-сервере.
Changelog
Смотрите CHANGELOG.md.
License
MIT. See LICENSE.md.
All versions of laravel-socialite with dependencies
laravel/framework Version ^12.25|^13.1
laravel/socialite Version *