diff --git a/common_lib/services/profile.py b/common_lib/services/profile.py index bad517e..7d2b08a 100644 --- a/common_lib/services/profile.py +++ b/common_lib/services/profile.py @@ -6,13 +6,34 @@ from config import settings from common_lib.utils.ssl_transport import ssl_transport -async def get_profile_by_user_id(user_id: UUID, token: str) -> dict: +# async def get_profile_by_user_id(user_id: UUID, token: str) -> dict: +# try: +# async with httpx.AsyncClient(transport=ssl_transport, timeout=5.0) as client: +# response = await client.get( +# f"{settings.PROFILE_SERVICE}/user_id/{user_id}", +# headers={"Authorization": f"Bearer {token}"} +# ) + +# if response.status_code != 200: +# raise HTTPException( +# status_code=response.status_code, +# detail=f"profile_service: {response.text}" +# ) + +# wrapped = response.json() +# return wrapped["data"] + +# except httpx.RequestError: +# raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="Token service unavailable") + +async def get_profile_by_user_id(user_id: UUID, current_user: UUID, token: str) -> dict: try: async with httpx.AsyncClient(transport=ssl_transport, timeout=5.0) as client: - response = await client.get( - f"{settings.PROFILE_SERVICE}/user_id/{user_id}", - headers={"Authorization": f"Bearer {token}"} - ) + response = await client.post( + f"{settings.PROFILE_SERVICE}/user_id/internal", + headers={"Authorization": f"Bearer {token}"}, + json={"user_id": str(user_id), + "current_user": str(current_user)}) if response.status_code != 200: raise HTTPException( @@ -23,8 +44,8 @@ async def get_profile_by_user_id(user_id: UUID, token: str) -> dict: wrapped = response.json() return wrapped["data"] - except httpx.RequestError: - raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail="Token service unavailable") + except httpx.RequestError as e: + raise HTTPException(status_code=status.HTTP_503_SERVICE_UNAVAILABLE, detail=f"profile_service unreachable: {str(e)}") async def get_profiles_by_user_ids(user_ids: List[UUID], token: str, user_id: UUID) -> Dict[str, dict]: diff --git a/pyproject.toml b/pyproject.toml index 284318c..4fe49a2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "common-lib" -version = "0.0.18" +version = "0.0.19" description = "Библиотека общих компонентов для микросервисов yobble" authors = [{ name = "cheykrym", email = "you@example.com" }] license = "MIT"