fastapi 接口鉴权

使用fastapi 做接口鉴权,可以在不同的接口上区分使用鉴权与不使用鉴权,fastapi 版本 0.109.2。下面是示例代码

from fastapi import Request, Response,status,Body
from fastapi import Depends, FastAPI, Header, HTTPException

async def verify_signature(request: Request) -> bool:
    try:
        # 从请求头和请求参数中中获取认证信息
        IsValid: bool = True
        data=await request.json()
        headers=request.headers
        # 验证headers 的传参信息和请求参数是否匹配
        print("in verify_signature,request={0},data={1}".format(request,data))
        return IsValid

    except Exception as ex:
        Logger.error("签名验证发生异常", ex)
        IsValid = False
        return IsValid

app = FastAPI()

# 公开路由
@app.get("/")
async def public_data():
    """
    公开路由示例
    :return: 一个公开的消息,无需鉴权
    """
    return {"message": "这是一个公开的路由,无需鉴权,name:{0}"}

@app.post("/test",)
async def public_data(name:str=Body(..., description="name", examples=["张"]),
                      season:str=Body(..., description="name", examples=["春季"]),
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值