FastAPI 学习之路(十三)Cookie 参数,Header参数

我们先来看下如何获取Header参数。代码实现

from fastapi import FastAPI, Header
from typing import Optional

app = FastAPI()


@app.get("/items")
def read_items(user_agent: Optional[str] = Header(None)):
    return {"User-Agent": user_agent}

我们看下请求接口

这样我们在请求的时候就可以获取接口的请求头参数了,我们可以在这里做一些特殊的处理。后续在项目的中增加。

我们看下如何实现带cookie参数

from fastapi import FastAPI, Cookie
from typing import Optional

app = FastAPI()


@app.get("/items")
def read_items(cookie_param: Optional[str] = Cookie(None)):
    return {"cookie_param": cookie_param}

其实也是很简单的,我们这里请求下看下。

我们简单的做了一个请求。

       这样我们在后续的请求中,我们可以对于header或者cookie做特殊的处理。

       我们写一个简单的demo。我们要求header的必须有token且token必须是456,没有返回无权限,cookie必须有一个name,且等于123,否则返回认证失败。

       我们看下如何实现呢

from fastapi import FastAPI, Cookie, Header
from typing import Optional

app = FastAPI()


@app.get("/items")
def read_items(
        name: Optional[str] = Cookie(None),
        token: Optional[str] = Header(None)
):
    if not token or token != "456":
        return "无权限"
    if not name or name != "123":
        return "认证失败"
    return {"msg": "you passed"}

我们看下接口请求

我们看下不带token

我们看下cookie 中的name不等于123,token正确

是可以正常返回的 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值