Python 19

FastAPI JWT 로그인 구현 기초: 토큰 인증 흐름 이해하기

FastAPI에서 JWT 로그인 인증이 어떻게 동작하는지 로그인 요청, 토큰 발급, Bearer 헤더 인증, 보호된 API 접근 흐름을 중심으로 정리합니다. FastAPI JWT 로그인은 사용자가 로그인하면 서버가 토큰을 발급하고, 이후 요청에서 그 토큰을 확인해 사용자를 인증하는 방식이다. 핵심은 “로그인 상태를 서버가 계속 들고 있지 않는다”는 점이다.일반적인 웹 로그인에서는 서버 세션을 떠올리기 쉽다.사용자가 로그인하면 서버가 세션을 만들고, 브라우저는 쿠키를 들고 다닌다. 요청이 올 때마다 서버는 쿠키에 연결된 세션 정보를 확인한다.JWT 방식은 조금 다르다.서버는 로그인 성공 시 서명된 토큰을 만들어 클라이언트에 전달한다. 클라이언트는 이후 API 요청마다 이 토큰을 함께 보낸다. 서버는 토큰의..

개발/FastAPI 2026.05.29

FastAPI SQLite 연결하기: SQLModel로 DB 저장 API 만들기

FastAPI에서 SQLite를 연결하는 방법을 SQLModel 기준으로 정리합니다. 최신 lifespan 방식으로 테이블을 생성하고, 데이터 저장·조회·삭제 API까지 초보자도 따라 할 수 있게 설명합니다. FastAPI SQLite 연결은 API가 받은 데이터를 메모리에만 두지 않고 실제 DB 파일에 저장하는 첫 단계입니다. 입문 단계에서는 별도 DB 서버가 필요 없는 SQLite로 시작하면 구조를 이해하기 쉽습니다.FastAPI에서 데이터베이스를 연결하는 방법은 여러 가지입니다.SQLAlchemy를 직접 써도 되고, 비동기 DB 라이브러리를 써도 됩니다.다만 처음 배우는 단계라면 SQLModel을 사용하는 방식이 편합니다. SQLModel은 Pydantic과 SQLAlchemy를 기반으로 만들어진 ..

개발/FastAPI 2026.05.26

FastAPI Swagger 문서 자동 생성, `/docs` 화면이 만들어지는 원리

FastAPI에서 Swagger UI 문서가 자동으로 생성되는 원리를 초보자도 이해하기 쉽게 정리했습니다. /docs, /redoc, /openapi.json의 역할과 실제 API 테스트 방법까지 함께 설명합니다. FastAPI를 실행한 뒤 /docs에 접속하면 API 문서 화면이 자동으로 열립니다. 따로 문서 파일을 만들지 않았는데도 엔드포인트, 요청값, 응답 구조가 정리되어 나오죠. 이 기능이 FastAPI의 Swagger 문서 자동 생성입니다.처음 보면 꽤 신기합니다.“내가 한 건 함수 하나 만든 것뿐인데, 왜 문서가 생기지?”이 부분을 이해하면 FastAPI가 왜 입문자에게도 편하고, 협업용 API 서버를 만들 때 왜 자주 언급되는지 감이 잡힙니다.2026년 5월 기준 FastAPI 공식 문서에 ..

개발/FastAPI 2026.05.26

FastAPI Pydantic 모델 기초: 요청 데이터를 검증하는 방법

FastAPI에서 Pydantic 모델을 사용하는 이유와 BaseModel 작성법, POST 요청 데이터 검증, Swagger UI 문서 자동 생성 흐름을 초보자 기준으로 정리합니다. FastAPI Pydantic 모델은 API로 들어오는 JSON 데이터를 정해진 구조로 받고, 타입이 맞는지 자동으로 검증할 때 사용한다. POST 요청을 다루기 시작했다면 거의 반드시 만나게 되는 개념이다.FastAPI를 처음 배울 때는 보통 이런 코드부터 시작한다.@app.get("/items/{item_id}")def read_item(item_id: int): return {"item_id": item_id} 이 단계에서는 URL에 들어온 값을 함수 인자로 받는다.그런데 회원가입, 게시글 작성, 상품 등록처럼 ..

개발/FastAPI 2026.05.26

FastAPI Path Parameter와 Query Parameter 차이 정리

FastAPI에서 Path Parameter와 Query Parameter를 어떻게 구분하고 사용하는지 예제 코드와 함께 정리합니다. 필수값, 선택값, 타입 변환, 검증 방식까지 함께 설명합니다. FastAPI Path Parameter와 Query Parameter는 URL로 값을 받는 방식이다. 둘 다 API에서 자주 쓰이지만, 역할은 다르다.FastAPI를 처음 배우면 이런 URL을 자주 보게 된다./items/1/items?skip=0&limit=10 둘 다 서버에 값을 전달한다는 점은 같다.하지만 /items/1의 1은 Path Parameter이고, ?skip=0&limit=10은 Query Parameter다.이 차이를 정확히 알아야 API 주소를 자연스럽게 설계할 수 있다. Path Par..

개발/FastAPI 2026.05.24

FastAPI GET, POST 요청 이해하기: 조회와 데이터 전송의 차이

FastAPI에서 GET과 POST 요청이 어떻게 다른지, 조회 API와 데이터 생성 API를 직접 만들며 Request Body, Pydantic, HTTPException, 자동 문서 테스트 흐름까지 초보자 기준으로 정리했습니다. FastAPI GET, POST 요청 차이는 API를 만들 때 가장 먼저 헷갈리는 부분입니다. 간단히 보면 GET은 데이터를 조회할 때, POST는 새 데이터를 보내거나 생성할 때 주로 사용합니다.처음에는 @app.get()과 @app.post()가 문법만 다른 것처럼 보일 수 있습니다.하지만 실제로는 API의 목적이 다릅니다.사용자가 상품 목록을 본다 → GET사용자가 새 상품을 등록한다 → POST게시글 상세 내용을 불러온다 → GET회원가입 정보를 서버로 보낸다 → P..

개발/FastAPI 2026.05.24

FastAPI 설치와 시작하기: 첫 API 만들고 문서 확인까지

Python FastAPI 설치부터 가상환경 생성, 첫 API main.py 코드 작성, 서버 실행, 자동 API 문서(docs) 확인까지 초보자 기준으로 직접 따라 할 수 있게 정리한 입문 가이드입니다. FastAPI 설치를 끝내고 첫 API를 만드는 과정은 생각보다 짧습니다. Python 파일 하나를 만들고, 서버를 실행한 뒤 브라우저에서 응답을 확인하면 기본 흐름은 잡힙니다.FastAPI는 Python으로 API 서버를 만들 때 자주 쓰이는 웹 프레임워크입니다. Django처럼 큰 웹 서비스 전체를 만들기보다는, 모바일 앱이나 프론트엔드에서 호출할 API 서버를 빠르게 만들 때 많이 사용합니다.처음 배우는 입장에서는 자동 문서 기능이 특히 편합니다.코드를 조금만 작성해도 API 문서 화면이 자동으로..

개발/FastAPI 2026.05.24

FastAPI란? Flask·Django 차이와 파이썬 백엔드 선택 기준

FastAPI의 개념과 Flask, Django와의 차이를 API 개발, 비동기 처리, 내장 기능, 학습 난이도 기준으로 비교합니다. FastAPI는 Python으로 API 서버를 만들 때 자주 쓰이는 웹 프레임워크입니다. Flask보다 API 개발에 특화되어 있고, Django보다 가볍게 시작할 수 있다는 점이 핵심입니다.Python 웹 개발을 찾아보면 보통 세 가지 이름을 많이 보게 됩니다.FastAPI, Flask, Django.처음 보면 셋 다 “Python으로 웹 서버 만드는 도구”처럼 보입니다. 맞는 말이긴 합니다. 다만 실제로는 지향점이 꽤 다릅니다.FastAPI는 API 서버를 빠르게 만들기 좋은 프레임워크에 가깝습니다.Flask는 작고 유연한 마이크로 프레임워크입니다.Django는 관리자..

개발/FastAPI 2026.05.23

파이썬 모듈과 패키지: import로 코드를 나누고 재사용하는 방법

파이썬 모듈과 패키지의 차이, import 사용법, 표준 라이브러리와 외부 패키지 설치 개념을 초보자 기준으로 정리합니다. 파이썬 모듈과 패키지는 코드를 여러 파일로 나누고 다시 가져와 쓰기 위한 구조입니다. 코드가 길어질수록 한 파일에 모든 내용을 넣기 어렵기 때문에, 기능별로 나누는 방법을 알아야 합니다.처음에는 import가 낯설 수 있습니다. 하지만 핵심은 단순합니다. 이미 만들어둔 코드를 현재 파일에서 불러와 사용하는 것입니다.모듈이란 무엇일까파이썬에서 모듈은 보통 하나의 .py 파일을 의미합니다.예를 들어 calculator.py라는 파일을 만들었다고 하겠습니다.# calculator.pydef add(a, b): return a + bdef subtract(a, b): return..

개발/python 2026.05.22

파이썬 파일 입출력: 텍스트 파일 읽고 쓰는 기본 방법

파이썬에서 텍스트 파일을 읽고 쓰는 방법을 open, with, read, readline, write 예제로 초보자 기준에서 정리합니다. 파이썬 파일 입출력은 프로그램 밖에 있는 파일을 읽거나, 프로그램에서 만든 내용을 파일로 저장하는 방법입니다. 메모장에 적힌 내용을 읽거나, 계산 결과를 텍스트 파일로 저장할 때 사용할 수 있습니다.프로그램 안의 변수는 실행이 끝나면 사라집니다. 하지만 파일로 저장하면 나중에 다시 열어 사용할 수 있습니다.파일 입출력이 필요한 상황예를 들어 다음과 같은 경우 파일 입출력이 필요합니다.사용자가 입력한 내용을 저장할 때프로그램 실행 결과를 기록할 때텍스트 파일에 있는 데이터를 읽어올 때로그 파일을 만들 때설정 파일을 불러올 때초보 단계에서는 먼저 텍스트 파일을 읽고 쓰는..

개발/python 2026.05.22