mirror of
https://github.com/fastapi/fastapi.git
synced 2025-12-23 22:29:34 -05:00
Co-authored-by: Yurii Motov <yurii.motov.monte@gmail.com> Co-authored-by: Motov Yurii <109919500+YuriiMotov@users.noreply.github.com>
26 lines
696 B
Python
26 lines
696 B
Python
from fastapi import Depends, FastAPI, Header, HTTPException
|
|
|
|
|
|
async def verify_token(x_token: str = Header()):
|
|
if x_token != "fake-super-secret-token":
|
|
raise HTTPException(status_code=400, detail="X-Token header invalid")
|
|
|
|
|
|
async def verify_key(x_key: str = Header()):
|
|
if x_key != "fake-super-secret-key":
|
|
raise HTTPException(status_code=400, detail="X-Key header invalid")
|
|
return x_key
|
|
|
|
|
|
app = FastAPI(dependencies=[Depends(verify_token), Depends(verify_key)])
|
|
|
|
|
|
@app.get("/items/")
|
|
async def read_items():
|
|
return [{"item": "Portal Gun"}, {"item": "Plumbus"}]
|
|
|
|
|
|
@app.get("/users/")
|
|
async def read_users():
|
|
return [{"username": "Rick"}, {"username": "Morty"}]
|