백엔드

데일리 과제 로그인, 회원가입 라우터에 hashed_password 처리하는 구문 추가 로그인, 로그아웃에 access_token 발급과 jwt로 회원인증하는 구문 추가 그 외 다른 라우터에 헤더에서 가져온 jwt 토큰으로 회원 식별하는 구문 추가 sqlalchemy를 설치하고 mysql 로컬호스팅되도록 설정 구현 sqlalchemy 모델들을 내 ERD에 맞춰서 구현 + pydantic의 response/request body에 맞게 행위에 따라서 구현 crud 할 수 있는 sqlalchemy 구문을 보고 select, delete, insert, update 할 수 있는 함수들 구현 4~6의 내용들을 라우터에서 바라볼 수 잇도록 import 한 후 api 로직 서비스 구현참고 링크: https://fa..
인증 user_list = [ {"user_id":"lee", 'password':'1234'}, {"user_id":"kim", 'password':'2345'}, {"user_id":"park", 'password':'3456'} ] # Decoded Algorithms def decode_hashed_password(hashed_password: str): hashed_password = hashed_password[::-1] return hashed_password # Create ticket Algorithms def create_client_ticket(user_id: str): user_ticket = user_id return user_ticket app = FastAPI() @app.ge..
FastAPI POSTMAN POSTMAN은 API 개발 및 테스트를 위한 협업 도구이다. 로그 확인 https://stackoverflow.com/questions/17523173/python-logging-streamhandler-is-not-sending-logs-to-stdout Python: logging.streamhandler is not sending logs to stdout I want to use StreamHandler logging handler of python. What i have tried is, import logging import sys mylogger = logging.getLogger("mylogger") h1 = logging.StreamHandler(stream..
데일리 과제 내가 디자인 한 RESTAPI 뼈대 FastAPI로 라우터 구현하기 (또는 오늘 api 수정사항 수정하여 다시 뼈대 잡기) 세부내용 API 디자인 명세서를 보고 라우터를 구현하여 깃허브에 푸시하고 깃 링크를 첨부하여 제출 Postman으로 GET/POST/PUT/PATCH/DELETE 등과 같이 요청을 보내어 logger를 사용하여 보내어진 데이터를 로깅하여 찍어보고 데이터가 잘 넘어오는지 확인하기 주고받는 객체는 단순히 json이 아닌 나의 API의 요청, 응답 Body에 맞게 Pydantic으로 모델을 만들어서 주고받도록 구현할 것 API 디자인 기존의 API 디자인의 경우 아래의 링크에서 확인 할 수 있다. 2023.08.14 - [부트캠프/[NIPA] AI 웹개발 취업캠프] - [데일..
과제 내 ERD를 보고 REST 형식에 맞게 API 디자인하기 상세내용 1. 파이썬&FastAPI 코드말고 엑셀 혹은 워드 등 문서로 작성할 것 코드는 본인이 별도로 작성하여 깃허브에 올려도 됨, 본 과제의 필수사항은 아님 2. API 디자인시에 반드시(!) 포함되어야 할 것 HTTP 메서드 리소스 식별할 수 있는 path 리소스의 식별할 수 있는 식별자 아이디 또는 쿼리 파라메터 요청 Body가 있다면 요청 Body의 key, value, datatype 기입 응답 Body가 있다면 응답 Body의 key, value, datatype 기입 복수의(multiple) 응답 결과가 있을 경우 몇건, start-end를 기준할 수 있는 식별자 기입 3. 작성 시 참고사항 GET : 단수 혹은 복수의 데이터를..
ERD 고도화 및 정규화 2 유저에게서 더 많은 정보를 저장하기로 하였다. 본 후기는 정보통신산업진흥원(NIPA)에서 주관하는 과정 학습/프로젝트/과제 기록으로 작성되었습니다.
과제 ERD 고도화 및 정규화하여 제출하기 테이블, 컬럼명 규칙에 맞게 재작성 (aka. 일종의 컨벤션을 잘 지켜서 일관성 있는 테이블과 컬럼 생성) 컬럼마다 data type과 constraint 등을 보이도록 ERD의 이미지 파일을 만들어서 제출 테이블의 primary key에 해당되는 index도 없으면 추가하여 만들 것 ERD 회원 회원 정보를 관리하기 위한 table user_id : Primary Key login_id : 접속을 위한 ID 값 password : 접속을 위한 비밀번호 값 기록 리뷰, 평가 기록을 관리하기 위한 table record_id : Primary Key user_id : 회원 과 연결된 Foreign Key movie_id : 영화 와 연결된 Foreign Key r..
HTTP Method 메서드 세부 내용 멱등성 GET 리소스를 요청 보장 POST 리소스를 전달 보장 X PUT 보장 X PATCH 일부분을 변경 DELETE 리소스를 삭제 보장 HEAD 보장 OPTIONS 보장 상태 코드 REST (Representational State Transfer) 웹을 위한 아키텍처의 설계와 개발을 안내하기 위해 만들어진 소프트웨어 아키텍처. 200년 로이필딩이라는 사람에 의해 제안됨. 구성요소 특징 Client-Server 여러 플랫폼에서 사용자 인터페이스의 이식성을 개선하고 서버 구성요소를 단순화하여 확장성을 향상시킴. Stateless 클라이언트의 상태를 저장하지 않음. Cache(Cacheable) Uniform Interface 요청과 응답에 대하여 일부 제약을 걸어..
과제 HTTP 헤더에 부분에 Connection 키라는 값 중 Keep-alive라는 옵션이 있음. 이것이 무엇인지 http를 사용하는데 대한 역할과 어떤 상황에서 사용되는지 알아보기 JSON 파일에 대해 간략히 알아보고 Python으로 json 파일을 Read, write 할 수 있는 코드 제출하기 (json 파일에 대한 스터디 자료도 제출) 1. Keep-alive GET /index.html HTTP/1.1 Host: www.example.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36 Accept: text/ht..
HTTP와 TCP의 관계 프로그래밍할 때 HTTP를 사용 (특히 프런트와 협업할 경우 높은 확률로) HTTP를 쓴다는 것은 하위의 TCP를 먼저 호출하게 됨(TCP를 이용하여 통신하게 됨. HTTP는 TCP 기반의 통신) (HTTP는 Stateless / TCP는 Stateful) (주로 TCP는 UDP와 비교를 하게 됨. 둘의 차이는 작동방식) TCP TCP 연결 TCP (Transmission Control Protocol)는 3-way hasndshaking 방식을 통해 신뢰성 높은 통신을 제공한다. Client는 SYN 플래그 비트 (x1)를 전송한다. Server는 ACK 플래그 비트 (x2)를 SYN와 함께 (y) 전송한다. Client는 ACK (x3)를 y와 함께 (y prime) 전송한다..
07LEE
'백엔드' 태그의 글 목록