|
|
from fastapi import FastAPI,Depends |
|
|
from fastapi.middleware.cors import CORSMiddleware |
|
|
from openkitx403 import OpenKit403Middleware, require_openkitx403_user |
|
|
app=FastAPI() |
|
|
|
|
|
origins=[ |
|
|
"http://localhost:3000" |
|
|
] |
|
|
|
|
|
app.add_middleware( |
|
|
CORSMiddleware, |
|
|
allow_origins=origins, |
|
|
allow_credentials=True, |
|
|
allow_methods=["*"], |
|
|
allow_headers=["*"], |
|
|
) |
|
|
|
|
|
try: |
|
|
|
|
|
app.add_middleware( |
|
|
OpenKit403Middleware, |
|
|
audience="http://127.0.0.1:8001", |
|
|
issuer="my-api-v1", |
|
|
ttl_seconds=60, |
|
|
bind_method_path=True, |
|
|
replay_backend="memory" |
|
|
) |
|
|
|
|
|
except Exception as e: |
|
|
print(e) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@app.get("/protected") |
|
|
async def protected(user = Depends(require_openkitx403_user)): |
|
|
return {"message": "Hello!", "wallet": user.address} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|