entidi2608 commited on
Commit
2697fe1
·
1 Parent(s): 421b227

new update

Browse files
Files changed (2) hide show
  1. routers/user.py +3 -3
  2. services/chat_service.py +2 -2
routers/user.py CHANGED
@@ -336,7 +336,7 @@ async def auth_google_callback(request: Request):
336
  # Set thời gian hết hạn ngắn, ví dụ 1 phút (60 giây)
337
  app_state = get_app_state(request=request)
338
  redis_client = app_state.redis
339
- redis_client.set(f"google_auth_code:{auth_code}", user_email, ex=60)
340
 
341
  # 3. Chuyển hướng về trang callback của frontend, đính kèm code này
342
  frontend_callback_url = f"{config.FRONTEND_URL}/auth/callback?code={auth_code}"
@@ -355,11 +355,11 @@ async def exchange_google_code_for_token(request: Request,response: Response, co
355
  redis_client = app_state.redis
356
  # 1. Lấy email từ Redis bằng code và xóa code ngay lập tức
357
  redis_key = f"google_auth_code:{code}"
358
- user_email_bytes = redis_client.get(redis_key)
359
  if not user_email_bytes:
360
  raise HTTPException(status_code=400, detail="Invalid or expired authorization code.")
361
 
362
- redis_client.delete(redis_key) # Dùng một lần
363
  user_email = user_email_bytes.decode()
364
 
365
  mongo_db.users.update_one({
 
336
  # Set thời gian hết hạn ngắn, ví dụ 1 phút (60 giây)
337
  app_state = get_app_state(request=request)
338
  redis_client = app_state.redis
339
+ await redis_client.set(f"google_auth_code:{auth_code}", user_email, ex=60)
340
 
341
  # 3. Chuyển hướng về trang callback của frontend, đính kèm code này
342
  frontend_callback_url = f"{config.FRONTEND_URL}/auth/callback?code={auth_code}"
 
355
  redis_client = app_state.redis
356
  # 1. Lấy email từ Redis bằng code và xóa code ngay lập tức
357
  redis_key = f"google_auth_code:{code}"
358
+ user_email_bytes = await redis_client.get(redis_key)
359
  if not user_email_bytes:
360
  raise HTTPException(status_code=400, detail="Invalid or expired authorization code.")
361
 
362
+ await redis_client.delete(redis_key) # Dùng một lần
363
  user_email = user_email_bytes.decode()
364
 
365
  mongo_db.users.update_one({
services/chat_service.py CHANGED
@@ -174,13 +174,13 @@ async def stream_chat_generator(
174
  try:
175
  # --- 1. Xác thực và kiểm tra metadata từ Redis (Tương tự ask_question_service) ---
176
  meta_key = f"conversation_meta:{chat_id}"
177
- if not app_state.redis.exists(meta_key):
178
  logger.warning(f"Stream: Metadata cho chat_id {chat_id} không tìm thấy.")
179
  error_payload = {"error": "Chat ID not found or session expired. Please reload."}
180
  yield f"event: error\ndata: {json.dumps(error_payload)}\n\n"
181
  return
182
 
183
- user_in_redis_bytes = app_state.redis.hget(meta_key, "user_id")
184
  if not user_in_redis_bytes:
185
  logger.error(f"Stream: user_id không có trong metadata của chat {chat_id}.")
186
  error_payload = {"error": "Chat metadata corrupted."}
 
174
  try:
175
  # --- 1. Xác thực và kiểm tra metadata từ Redis (Tương tự ask_question_service) ---
176
  meta_key = f"conversation_meta:{chat_id}"
177
+ if not await app_state.redis.exists(meta_key):
178
  logger.warning(f"Stream: Metadata cho chat_id {chat_id} không tìm thấy.")
179
  error_payload = {"error": "Chat ID not found or session expired. Please reload."}
180
  yield f"event: error\ndata: {json.dumps(error_payload)}\n\n"
181
  return
182
 
183
+ user_in_redis_bytes =await app_state.redis.hget(meta_key, "user_id")
184
  if not user_in_redis_bytes:
185
  logger.error(f"Stream: user_id không có trong metadata của chat {chat_id}.")
186
  error_payload = {"error": "Chat metadata corrupted."}