feat:增加权限控制
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from fastapi import FastAPI
|
||||
from .blog import router as blog_router
|
||||
|
||||
from .session import router as session_router
|
||||
|
||||
def register_routers(app: FastAPI):
|
||||
app.include_router(blog_router, prefix="")
|
||||
app.include_router(blog_router, prefix="")
|
||||
app.include_router(session_router, prefix="")
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -3,6 +3,7 @@ from typing import List
|
||||
from fastapi import APIRouter, Depends, Query, Request
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from config.auth import verify_token
|
||||
from schemas.blog import BlogResponse, BlogQuery, BlogCategoryResponse, BlogStatsResponse, \
|
||||
BlogLatestResponse, BlogCommentCreate, BlogCommentResponse, BlogVisitResponse, BlogCreate, BlogUpdate
|
||||
from schemas.pagination import PageResult
|
||||
@@ -35,17 +36,17 @@ def query_blog_by_id(blog_id: int, db: Session = Depends(get_db)):
|
||||
|
||||
|
||||
@router.post("", summary="新增博客内容", response_model=bool)
|
||||
def add_blog(blog: BlogCreate, db: Session = Depends(get_db)):
|
||||
def add_blog(blog: BlogCreate, db: Session = Depends(get_db), _ = Depends(verify_token)):
|
||||
return blog_service.add_blog(db, blog)
|
||||
|
||||
|
||||
@router.put("/{blog_id}", summary="更新博客内容", response_model=bool)
|
||||
def update_blog(blog_id: int, blog: BlogUpdate, db: Session = Depends(get_db)):
|
||||
def update_blog(blog_id: int, blog: BlogUpdate, db: Session = Depends(get_db), _ = Depends(verify_token)):
|
||||
return blog_service.update_blog(db, blog_id, blog)
|
||||
|
||||
|
||||
@router.delete("/{blog_id}", summary="删除博客内容", response_model=bool)
|
||||
def delete_blog(blog_id: int, db: Session = Depends(get_db)):
|
||||
def delete_blog(blog_id: int, db: Session = Depends(get_db), _ = Depends(verify_token)):
|
||||
return blog_service.delete_blog(db, blog_id)
|
||||
|
||||
|
||||
|
||||
18
api/session.py
Normal file
18
api/session.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from fastapi import APIRouter, Depends
|
||||
from fastapi.security import OAuth2PasswordRequestForm
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from config.database import get_db
|
||||
from schemas.session import SessionResponse
|
||||
from service import session_service
|
||||
|
||||
router = APIRouter(
|
||||
prefix="/session",
|
||||
tags=["会话"],
|
||||
responses={404: {"description": "Not found"}}
|
||||
)
|
||||
|
||||
|
||||
@router.post("", summary="创建会话", response_model=SessionResponse)
|
||||
def create(form_data: OAuth2PasswordRequestForm = Depends(), db: Session = Depends(get_db)):
|
||||
return session_service.create(db, form_data.username, form_data.password)
|
||||
Reference in New Issue
Block a user