GET /users HTTP/1.1
Host: example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6Ikp...
Content-Type: application/json
User-Agent: Mozilla/5.0
Authorization: Bearer <토큰>from fastapi import Depends, HTTPException
from fastapi.security import HTTPBearer
security = HTTPBearer()
@app.get("/secure")
async def secure_endpoint(credentials=Depends(security)):
token = credentials.credentials # 단순히 Authorization 헤더에서 토큰 꺼냄
if token != "mysecrettoken":
raise HTTPException(status_code=401, detail="Invalid token")
return {"msg": "Access granted"}
Authorization: Bearer <token> 을 읽음.from fastapi.security import OAuth2PasswordBearer
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/auth/login")
from fastapi import Depends, HTTPException, status
from fastapi.security import OAuth2PasswordBearer
from jose import jwt, JWTError
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/auth/login")
@app.get("/users/me")
async def read_users_me(token: str = Depends(oauth2_scheme)):
# 여기서 토큰 검증 (JWT decode)
try:
payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM])
username = payload.get("sub")
except JWTError:
raise HTTPException(status_code=401, detail="Invalid token")
return {"username": username}

문제 1. 로그아웃을 진행하면 422 (token missing)이 발생
문제 2. 422 해결했더니 401("Invalid token") 발생



