Django의 요청/응답 주기

Kangjik Kim·2025년 1월 23일
0

이미지 출처 : https://www.technoarchsoftwares.com/blog/django-request-response-cycle/

  1. 웹 브라우저는 URL(http://localhost:8000/blog/3/)로 페이지를 요청한다.
    웹 서버가 HTTP 요청을 수신해 쟝고에 전달한다.
  2. 쟝고는 URL 패턴의 구성에 정의된 각 URL 패턴을 검사하고, 프레임워크는 주어진 URL 경로에 대해 각 패턴을 나타나는 순서대로 확인한고 요청된 URL과 매칭되는 첫번째 패턴에서 검사를 멈춘다.
    /blog// 패턴이 /blog/33/ 경로와 매칭되게 된다.
  3. 쟝고는 일치하는 URL 패턴의 뷰를 가져와 HttpRequest 클래스의 인스턴스와 키워드 또는 위치 인수를 전달해 실행한다.
    뷰는 모델을 사용해 DB에서 정보를 조회하는데, 쟝고 ORM QuerySet을 사용하면 SQL로 변환되어 DB에서 실행된다.
  4. 뷰는 render() 함수를 사용해 context 변수로 Post를 전달해 HTML 템플릿을 렌더링한다.
  5. 렌더링된 내용은 컨텐트 타입이 기본적으로 text/html인 뷰에 의해 HttpResponse 객체로 반환된다.

여기서는 설명의 단순화를 위해 미들웨어는 포함시키지 않았지만 추후에 미들웨어를 공부하며 추가할 예정이다.

0개의 댓글