현대 오토에버 클라우드 스쿨
Web Programming
Gom3rye
2025. 5. 20. 09:37
728x90
메쉬업 : 서로 다른 웹 서비스를 결합하여 새로운 서비스를 만드는 방식.
- ex. Google Maps + Yelp: 사용자가 위치를 검색하면, 해당 지역의 음식점과 리뷰를 보여주는 서비스
요새는 웹도 모바일 형식으로 만드려고 한다. → 핸드폰으로 더 많이 보니까
운영체제를 웹 브라우저 기반으로 넘기려고 많이 한다.
데이터 삽입 - post
웬만하면 patch 하지 말고 다 바꿔라
- forwarding : 현재 요청(내가 요청한 것)을 그대로 가지고 들어가는것 (이전 했던 것 또 함) ex. 문서 조회
→ 디도스 공격 당할 수 있어서 잘 안 쓰려고 함 (다수가 f5 계속 누르면 사이트 터짐)
- redirection: 이전 요청을 버려버리고 들어가는 것 (이전 했던 것 안 함) ex. 회원 가입
상태코드
- 300번대 : Redirection, 추가적인 동작 필요해서 서버의 주소나 요청한 문서가 이동된 경우
- 400번대 : 클라이언트가 잘못한 것
- 500번대 : 서버에서 터진 것, 서버에서 그 요청을 처리를 못 한 것
1. Python Web Programming Framework
종류
- flask: 자유도 높음 (내 맘대로 할 수 있는 게 많음), View를 html로 만들어서 활용 가능
- django: 자유도 낮음, Template Engine을 이용해서 View를 생성
- fast api: 자유도 높음 → 되도록이면 장고보다 이거 사용해보길 추천
요새 trend → backend에서는 data만 제공하고 각각의 frontend는 별개로 구현 (1서버-n프론트엔드) ⇒ 속도도 빨라짐
2. Fast API
설치
pip install fastapi, uvicorn
# main.py 파일 만들어서
from fastapi import FastAPI
app = FastAPI() # app = 인스턴스 이름
# 이게 중요) 처리할 URL, 기본 요청이 오면 아래 함수를 수행해서 결과를 리턴
@app.get("/")
async def welcome() -> dict:
return {"message": "손으로 코딩하고 뇌로 컴파일하면 눈으로 디버깅한다."}
fast api 실행 명령
uvicorn 파일명:인스턴스 이름 --port 포트번호 --host IP주소 --reload
uvicorn main:app --port 8000 # 8000: 관습적으로 개발용 서버 포트
# 인스턴스 이름: app
# 포트번호: 접속할 서버의 포트로 80(http)이나 443(https)으로 설정하면 포트번호를 입력할 필요 x
# IP 주소는 그냥 실행하면 현재 컴퓨터에서만 IP로 접속 가능하고 0.0.0.0으로 실행하면 모든 곳에서 접속 가능하다.
# reload: 코드를 수정하면 서버를 자동으로 재실행되도록 하는 옵션으로 개발 중에만 사용하며 실제 배포 환경에서는 사용 x
728x90
반응형