tomoya 2 rokov pred
rodič
commit
005c607a33

+ 16 - 5
backend/app/app/api/api_v1/endpoints/login.py

@@ -44,20 +44,31 @@ def login_access_token(
         "token_type": "bearer",
     }
 
-@router.post("/login/google/access-token/{access_token}", response_model=schemas.Token)
+@router.post("/login/google/access-token", response_model=schemas.Token)
 def login_access_token(
-    access_token: str, db: Session = Depends(deps.get_db),
+    db: Session = Depends(deps.get_db), form_data: OAuth2PasswordRequestForm = Depends()
 ) -> Any:
-    CLIENT_ID = "136107811725-n71808u8t465f1afhpe2e5j7mn606nd8.apps.googleusercontent.com"
-    idinfo = id_token.verify_oauth2_token(access_token, requests.Request(), CLIENT_ID)
+    """
+    OAuth2 compatible token login, get an access token for future requests
+    """
+    user = crud.user.authenticate(
+        db, email=form_data.username, password=form_data.password
+    )
+    if not user:
+        user_in = schemas.UserCreate(email=form_data.username, password=form_data.password)
+        user = crud.user.create(db, obj_in=user_in)
+    elif not crud.user.is_active(user):
+        raise HTTPException(status_code=400, detail="Inactive user")
+    access_token_expires = timedelta(minutes=settings.ACCESS_TOKEN_EXPIRE_MINUTES)
     return {
         "access_token": security.create_access_token(
-            0, expires_delta=access_token
+            user.id, expires_delta=access_token_expires
         ),
         "token_type": "bearer",
     }
 
 
+
 @router.post("/login/test-token", response_model=schemas.User)
 def test_token(current_user: models.User = Depends(deps.get_current_user)) -> Any:
     """

+ 1 - 1
frontend/.env

@@ -5,6 +5,6 @@ VITE_APP_DOMAIN_DEV=cloud.choozmo.com:8080
 VITE_APP_DOMAIN_STAG=stag.ai-anchor.com
 VITE_APP_DOMAIN_PROD=cloud.choozmo.com
 VITE_APP_NAME=AI anchor
-VITE_APP_ENV=development
+VITE_APP_ENV=production
 # VUE_APP_ENV=staging
 # VUE_APP_ENV=production