Commit 44328aeb authored by xianyang's avatar xianyang

优化代码

parent dd27929f
from typing import List from typing import List
from fastapi import Depends, APIRouter from fastapi import Depends, APIRouter
from datetime import datetime, timedelta from datetime import timedelta
from sqlalchemy.orm import Session from sqlalchemy.orm import Session
from app import get_db
from app.api.users import crud, schemas from app.api.users import crud, schemas
from app.api.users.login_verification import authenticate_user, create_access_token, get_user from app.api.users.login_verification import authenticate_user, create_access_token, get_user
from app.api.users.schemas import UserLoginForm, GoogleCode, GoogleLogin from app.api.users.schemas import UserLoginForm, GoogleCode, GoogleLogin
from core.storage.db import SessionLocal
from libs.google_code import get_qrcode, google_verify_result from libs.google_code import get_qrcode, google_verify_result
from libs.img_code import imageCode from libs.img_code import imageCode
from libs.result_format import HttpResultResponse, HttpMessage from libs.result_format import HttpResultResponse, HttpMessage
...@@ -13,32 +13,15 @@ from libs.result_format import HttpResultResponse, HttpMessage ...@@ -13,32 +13,15 @@ from libs.result_format import HttpResultResponse, HttpMessage
router = APIRouter() router = APIRouter()
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()
# @router.post("/", response_model=schemas.User)
# def create_user(user: schemas.UserCreate, db: Session = Depends(get_db)):
# db_user = crud.get_user_by_email(db, email=user.email)
# if db_user:
# raise HTTPException(status_code=400, detail="Email already registered")
# return crud.create_user(db=db, user=user)
@router.get("/", response_model=List[schemas.User]) @router.get("/", response_model=List[schemas.User])
def read_users(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): def read_users(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)):
users = crud.get_users(db, skip=skip, limit=limit) users = crud.get_users(db, skip=skip, limit=limit)
return users return users
@router.get("/imgCode") @router.get("/imgCode")
def imgCode(): def imgCode():
return imageCode().getImgCode() return HttpResultResponse(data=imageCode().getImgCode())
@router.post("/login") @router.post("/login")
......
...@@ -2,10 +2,8 @@ import base64 ...@@ -2,10 +2,8 @@ import base64
import os.path import os.path
import random import random
import string import string
import requests import requests
from PIL import Image, ImageFont, ImageDraw from PIL import Image, ImageFont, ImageDraw
from six import BytesIO from six import BytesIO
session = requests.session() session = requests.session()
...@@ -41,7 +39,7 @@ class imageCode(): ...@@ -41,7 +39,7 @@ class imageCode():
# 新图片对象 # 新图片对象
im = Image.new('RGB', (width, height), 'white') im = Image.new('RGB', (width, height), 'white')
# 字体 # 字体
font_file = os.path.join(os.getcwd(), "libs", "DejaVuSans-BoldOblique.ttf") font_file = os.path.join(os.getcwd(), "static", "DejaVuSans-BoldOblique.ttf")
font = ImageFont.truetype(font_file, 40) font = ImageFont.truetype(font_file, 40)
# draw对象 # draw对象
draw = ImageDraw.Draw(im) draw = ImageDraw.Draw(im)
...@@ -62,4 +60,4 @@ class imageCode(): ...@@ -62,4 +60,4 @@ class imageCode():
img = b"data:image/png;base64," + base64.b64encode(buf_str) img = b"data:image/png;base64," + base64.b64encode(buf_str)
session.headers['verify'] = code session.headers['verify'] = code
print(code) print(code)
return img return img.decode('utf-8')
...@@ -19,4 +19,4 @@ app.include_router(api_router, prefix="/api") # 路由 ...@@ -19,4 +19,4 @@ app.include_router(api_router, prefix="/api") # 路由
if __name__ == '__main__': if __name__ == '__main__':
uvicorn.run(app=app, host="127.0.0.1", port=8001) uvicorn.run(app=app, host="0.0.0.0", port=8001)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment