diff --git a/goauthsocialfrontendtest/README.md b/goauthsocialfrontendtest/README.md index 1206825..fc000ba 100644 --- a/goauthsocialfrontendtest/README.md +++ b/goauthsocialfrontendtest/README.md @@ -13,12 +13,12 @@ Создайте файл `.env.local` (см. [`/.env.local.example`](./.env.local.example)) и задайте: ```bash -NEXT_PUBLIC_API_BASE_URL=https://test.ruact.ru # адрес бэкенда GoAuthSocial -NEXT_PUBLIC_YANDEX_CLIENT_ID=xxxxxxxxxxxxxxxxxxxx # client_id из кабинета Yandex -NEXT_PUBLIC_YANDEX_REDIRECT_URI=https://frontend.test.ruact.ru/auth/callback +NEXT_PUBLIC_API_BASE_URL=https://test.ruact.ru +NEXT_PUBLIC_YANDEX_CLIENT_ID=xxxxxxxxxxxxxxxxxxxx +NEXT_PUBLIC_YANDEX_REDIRECT_URI=https://test.ruact.ru/auth/callback ``` -`NEXT_PUBLIC_YANDEX_REDIRECT_URI` должен совпадать с URL, указанный в настройках приложения Yandex ID. На этот адрес вернётся код авторизации, который фронтенд отправит на бэкенд. +`NEXT_PUBLIC_YANDEX_REDIRECT_URI` должен совпадать с адресом, указанным в настройках приложения Yandex ID. ### Запуск в разработке @@ -27,23 +27,23 @@ pnpm install pnpm dev ``` -Откройте [http://localhost:3000](http://localhost:3000). На главной странице расположен брендированный лендинг с официальной кнопкой Yandex ID (через SDK `sdk-suggest`). +После сборки и деплоя фронтенд обслуживается по `https://test.ruact.ru`. На главной странице размещена кнопка Yandex ID (через SDK `sdk-suggest`). ### Пользовательский flow 1. Пользователь нажимает кнопку «Войти через Yandex». -2. Yandex SDK перенаправляет на страницу авторизации Yandex ID с указанным `redirect_uri`. -3. После успешного подтверждения Yandex возвращает браузер на `/auth/callback` с `code` и `state`. -4. Страница `/auth/callback` автоматически отправляет `code` на GoAuthSocial (`/api/v1/auth/callback/yandex`). -5. Бэкенд возвращает `AuthCallbackResponse` (access_token, refresh_token, application_token и др.), который отображается пользователю. +2. SDK перенаправляет на страницу авторизации Яндекса с `redirect_uri=https://test.ruact.ru/auth/callback`. +3. После авторизации Яндекс возвращает браузер на `/auth/callback` с `code` и `state`. +4. Страница `/auth/callback` отправляет эти данные на backend (`/api/v1/auth/callback/yandex`). +5. Backend возвращает `AuthCallbackResponse` с токенами и `application_token`. Если SDK не загрузился, отображается fallback‑кнопка, которая запрашивает redirect URL у бэкенда (`/api/v1/auth/authorize/yandex`) и вручную выполняет перенаправление. ### Дальнейшая интеграция - Сохраните `application_token` и токены провайдера в хранилище клиента. -- Организуйте защищённые запросы к вашему API с использованием `application_token`. -- Добавьте обработку ошибок и logout по требованиям продукта. +- Организуйте авторизованные запросы к API через `application_token`. +- Реализуйте обработку ошибок и logout под требования конкретного продукта. ### Скрипт Yandex ID