728x90
JWT를 생성한 후 Postman을 통해 GET API를 요청해 보자
1. auth 서버 실행 후 POST API를 통한 유저 bearer token을 생성한다.
#포트를 8000번이 아닌 9000번에 열겠다.
uvicorn auth:app --reload --port 9000
9000포트로 실행 시킨 이유
#auth.py로 토큰 생성 port:9000
#main.py로 데이터 요청 port:8000
2. main.py에서 get요청을 위해 auth의 함수를 import 한다.
from auth import get_current_user, get_user_exception
#GET API 생성
@app.get("/todos/user")
async def read_all_by_user(user: dict = Depends(get_current_user), db: Session = Depends(get_db)):
if user is None:
raise get_user_exception()
return db.query(models.Todos).filter(models.Todos.owner_id == user.get("id")).all()
※ bearer token와 맞는 user의 정보를 받아서 todos 테이블을 조회한다.
3. Postman 접속 후 GET 요청해보기
새로운 터미널을 열어서 실행
uvicorn main:app --reload
user: codingwithseok / password: test1234! 의 사용자에 대한 todos 테이블의 데이터 값이 보인다.
※ 사용자에 대한 인증을 위해 bearer token을 반드시 넣어줘야 한다(token을 생성한 이유)
bearer token을 요청 간 주지 않았다면?
※ Not authenticated(인증 X)을 확인할 수 있다.
4. 추가 GET 요청(테스트 유저)
user: exampleuser / password: test1234!
순서: bearer token 생성 -> GET 요청
728x90
SMALL
'Develop > FastAPI' 카테고리의 다른 글
FastAPI Postman을 통한 POST요청(사용자 ID) - 55 (1) | 2023.01.10 |
---|---|
FastAPI Postman을 통한 GET요청(사용자 ID + 할 일 ID) - 54 (0) | 2023.01.10 |
FastAPI 데이터베이스 내 User와 Todo의 관계 설정 - 52 (0) | 2023.01.10 |
FastAPI Postman 설치 / 사용법(GET kakao 검색) - 51 (2) | 2023.01.09 |
FastAPI Custom HTTPException for Auth - 50 (0) | 2023.01.08 |