fastapi(8)
-
주요 파일 별도 저장하기
.envuser=abcpasswd=erfmain.py: .env와 같은 위치에 있어야 함from dotenv import load_dotenv# Load .env fileload_dotenv()# Load secretsuser = os.getenv("user")passwd = os.getenv("passwd")main.py: .env와 다른 위치인 경우from dotenv import load_dotenvfrom pathlib import Pathenv_path = Path("/path/to/your/envdir") / ".env"load_dotenv(dotenv_path=env_path)
2025.04.13 -
로그인 추가하기
from fastapi import FastAPI, Depends, HTTPException, statusfrom fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestFormfrom jose import JWTError, jwtfrom datetime import datetime, timedeltafrom typing import Optionalimport uuid, hashlib, base64, hmac, requestsapp = FastAPI()# Secret for user JWT tokenJWT_SECRET = "your-jwt-secret-key"JWT_ALGORITHM = "HS256"JWT_EXPIRE_MINUTES = 60..
2025.04.13 -
FastAPI에서 이미지 가져오기
Binary를 직접 가져오기pom.xml org.apache.httpcomponents.client5 httpclient5 5.1Spring Boot Codeimport org.springframework.core.io.InputStreamResource;import org.springframework.http.HttpHeaders;import org.springframework.http.MediaType;import org.springframework.http.ResponseEntity;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestParam;impo..
2024.10.19 -
FastAPI 이미지 만들기
# 파이썬 alpine tag 참조FROM python:{tag}RUN set -x \ && apk update \ # 계정 추가 && addgroup -g {gid} {group} \ && adduser -u {uid} {user} -G {group} -D \ && echo "{user} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers \ # 모듈 설치 && apk add bash \ && pip install --upgrade pip \ && pip install fastapi \ && pip install uvicorn# 소스 복사COPY --chown={user}:{group} ./src {workspace}/src ..
2024.09.16 -
파일 다운로드 설정
참조: https://chaechae.life/blog/fastapi-download-api FastAPI 파일 다운로드 구현하기특정 데이터들을 Excel로 다운로드 하거나, 이미지들을 다운로드 하는 등의 요청이 있었습니다. 이와 관련해서 FastAPI에서 파일 다운로드 방법을 이번 포스팅에 공유하고자 합니다.chaechae.life @app.get('/qrcode')async def qrcode(file: str): return FileResponse(file, media_type='image/png', filename=file)
2024.06.28 -
FastAPI CORS 설정
https://developer-itspjc.tistory.com/25 Fast API 에서 CORS 에러 해결하기 웹개발을 하다보면 가장 골치아픈 것 중 하나가 CORS (Cross-Origin Resource Sharing) 에러이다. 특히 높은 수준의 보안을 요구하는 Chrome 의 경우에는 원천적으로 CORS를 허용하지 않기 때문에 정말 많은 developer-itspjc.tistory.com from starlette.middleware.cors import CORSMiddleware app = FastAPI() origins = [ "http://localhost:{port}" ] app.add_middleware( CORSMiddleware, allow_origins=origins, allo..
2024.04.01