This commit is contained in:
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
## [0.9.23] - 2025-09-23
|
## [0.9.23] - 2025-09-23
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- 🔧 **OAuth Callback URL**: Исправлено формирование callback URL - добавлен отсутствующий слеш между доменом и путем
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
- 🔄 **OAuth Routes**: Возвращены к стандартному формату `/oauth/{provider}` - провайдеры не передают параметр provider в callback
|
- 🔄 **OAuth Routes**: Возвращены к стандартному формату `/oauth/{provider}` - провайдеры не передают параметр provider в callback
|
||||||
|
|
||||||
|
|||||||
@@ -407,8 +407,8 @@ async def oauth_login(_: None, _info: GraphQLResolveInfo, provider: str, callbac
|
|||||||
}
|
}
|
||||||
await store_oauth_state(state, oauth_data)
|
await store_oauth_state(state, oauth_data)
|
||||||
|
|
||||||
# Используем URL из фронтенда для callback - для фронтенда
|
# Используем URL из фронтенда для callback - для фронтенда (добавляем слеш если его нет)
|
||||||
oauth_callback_uri = f"{callback_data['base_url']}oauth/{provider}/callback"
|
oauth_callback_uri = f"{callback_data['base_url'].rstrip('/')}/oauth/{provider}/callback"
|
||||||
|
|
||||||
try:
|
try:
|
||||||
return await client.authorize_redirect(
|
return await client.authorize_redirect(
|
||||||
@@ -545,8 +545,8 @@ async def oauth_login_http(request: Request) -> JSONResponse | RedirectResponse:
|
|||||||
}
|
}
|
||||||
await store_oauth_state(state, oauth_data)
|
await store_oauth_state(state, oauth_data)
|
||||||
|
|
||||||
# URL для callback - для фронтенда
|
# URL для callback - для фронтенда (добавляем слеш если его нет)
|
||||||
callback_uri = f"{FRONTEND_URL}oauth/{provider}/callback"
|
callback_uri = f"{FRONTEND_URL.rstrip('/')}/oauth/{provider}/callback"
|
||||||
|
|
||||||
# 🔍 Создаем redirect URL вручную (обходим использование request.session в authlib)
|
# 🔍 Создаем redirect URL вручную (обходим использование request.session в authlib)
|
||||||
# VK не поддерживает PKCE, используем code_challenge только для поддерживающих провайдеров
|
# VK не поддерживает PKCE, используем code_challenge только для поддерживающих провайдеров
|
||||||
|
|||||||
Reference in New Issue
Block a user