SMALL 코딩/Python6 JWT 토큰을 이용해서 액세스 토큰 구현해보기 개인 프로젝트를 진행하며 JWT 토큰을 활용해 로그인 기능을 구현해봤습니다. FastAPI + Python으로 진행했습니다. 1. 로그인 라우터 만들기 OAuth2PasswordRequestForm에서 사용할 username과 password를 login서비스의 매개변수로 입력합니다. from fastapi import APIRouter, Depends from fastapi.security import OAuth2PasswordRequestForm from db.post.login import login router = APIRouter() @router.post("/login", tags=["login"]) def login_jwt(form_data: OAuth2PasswordRequestForm =.. 2023. 7. 8. JWT(Jason Web Token)토큰 만들기 JWT 토큰을 만드는 과정입니다 1.필요한 라이브러리 설치 pip install pyjwt 2.payload 데이터 생성 payload는 JWT 토큰 안에 들어가는 정보입니다. 딕셔너리 형태로 생성합니다. payload = { "sub": "1234567890", "name": "John Doe", "iat": 1516239022 } 이 payload 데이터는 sub 속성에는 사용자 ID, name 속성에는 사용자 이름, iat 속성에는 토큰 발급 시간을 나타내도록 하였습니다. 3.비밀키 생성 JWT 토큰에는 발급자를 확인하기 위한 서명(signature)이 들어갑니다. 이 서명에 사용할 비밀키를 생성합니다. import os secret = os.getenv("JWT_SECRET_KEY") 4.JWT .. 2023. 7. 8. pip 파이썬 패키지 관리자 pip는 파이썬으로 작성된 패키지 소프트웨어를 설치하거나 관리하는 패키지 관리 시스템이다. 설치된 버전 확인 pip —version pip 업그레이드 python -m pip install --upgrade pip 현재 설치되어 있는 패키지 목록 확인 pip list 패키지 설치 pip install 패키지명 패키지 제거 pip unistall 패키지명 2023. 6. 19. 모듈, 패키지, 라이브러리, 프레임워크 이해하기 모듈 (Module): 모듈은 코드 조각을 담고 있는 파일입니다. 함수, 클래스, 변수 등의 정의가 포함되어 있으며, 재사용 가능한 코드 블록입니다. 다른 모듈에서 임포트하여 사용할 수 있습니다. 파이썬에서 .py확장자로 생성된 파일은 모두 모듈이라고 볼 수 있습니다. 패키지 (Package): 패키지는 관련된 모듈들을 그룹화한 디렉터리입니다. 패키지는 계층적인 구조를 가지며, 관련된 모듈을 보다 체계적으로 관리할 수 있도록 도와줍니다. 패키지는 __init__.py 파일을 포함하여 초기화 코드나 패키지 관련 설정을 담고 있습니다. 라이브러리 (Library): 라이브러리는 재사용 가능한 코드 집합으로, 모듈이나 패키지의 집합체입니다. 특정 기능을 수행하기 위해 여러 모듈이나 패키지로 구성될 수 있습니다.. 2023. 6. 19. 할당연산자 파이썬에서 기본으로 사용되는 할당연산자는 등호(=)이다. 등호는 오른쪽의 값을 왼쪽으로 할당한다. 할당연산자 기능 예 = 왼쪽 변수에 오른쪽 값을 할당한다. a = b 는 a = b 를 의미함 += 왼쪽 변수에 오른쪽 값을 더하고 그 결과를 왼쪽 변수에 할당한다. a += b 는 a = a+b 를 의미함 -= 왼쪽 변수에 오른쪽 값을 빼고 그 결과를 왼쪽 변수에 할당한다. a -= b 는 a = a-b 를 의미함 *= 왼쪽 변수에 오른쪽 값을 곱하고 그 결과를 왼쪽 변수에 할당한다. a *= b 는 a = a*b 를 의미함 /= 왼쪽 변수에 오른쪽 값을 나누고 그 결과를 왼쪽 변수에 할당한다. a /= b 는 a = a/b 를 의미함 %= 왼쪽 변수에 오른쪽 값을 나눈 후 그 나머지를 왼쪽 변수에 할당한.. 2022. 7. 18. 파이썬 웹 프레임워크 1. 프레임워크 소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것. - Library 우리의 프로그램에 특정한 문제를 해결해주거나 특별한 기능을 부여해주는 것 ex) BeautifulSoup : 웹사이트에서 특정한 태그나 클래스 등에 해당하는 요소를 가져와주는 '기능'을 부여 - Framework 우리가 우리의 목적에 맞게 코드를 작성할 수 있는 커다란 틀을 제공 ex)Django : DB와 서버를 이어주는 웹프로젝트 구현이라는 목적에 맞게 구조화된 패키지의 형태로 되어있음 2. Django VS Flask - Django (풀 프레임워크) 장점 이미 모든 것이 준비되어 있다 매우 우수한 문서, 매우 큰 생태계 확장성 어드민 패널 단점 .. 2022. 7. 10. 이전 1 다음 반응형 LIST