FastAPI OAuth2 认证

FastAPI OAuth2 认证

需求:

    1. Get 方法接口任意都可以访问

    1. Post 方法接口需要认证后才可以访问。

# coding: utf8

from fastapi import FastAPI, Depends
from fastapi.security import OAuth2PasswordBearer

app = FastAPI()
oauth2_scheme = OAuth2PasswordBearer(tokenUrl='12300')



@app.get('/users')
async def get_users():
    return {"method": 'Get'}

@app.post('/users')
async def write_users(token: str = Depends(oauth2_scheme)):   # 传入任意 token 值都可以获取, 请往下看
    return {"method": 'Post', 'token': token}
# # 启动: uvicorn main:app --reload

获取当前用户

用密码和 Bearer 的简单 OAuth2

代码中的:

UserInDB(**user_dict) 表示:

直接将 user_dict 的键和值作为关键字参数传递,等同于:

加入我们的状态现在改成了True

Last updated