📗 Django
Web 이해하기
- World Wide Web : 전 세계에 펼쳐져 있는 거미줄을 의미한다.
- 해저 광케이블로 전 세계가 이어져 있다.
- 우리가 웹 또는 인터넷이라고 하는 건 결국,
- 전 세계의 컴퓨터가 서로 연결되어 있는 거대한 인프라를 이용하는 것이다.
클라이언트 - 서버 구조
- 우리가 사용하는 대부분의 서비스는 클라이언트-서버 구조를 가지고 있다.
- 결국 클라이언트도, 서버도 하나의 컴퓨터다.
클라이언트(Client)
- 인터넷에 연결이 가능한 장치
- 특히, 웹 브라우저를 말한다.
- 서비스를 요청하는 주체 (사용자)
- 스마트폰, 애플워치, 아이패드 등등
서버(Server)
- 자원(Resource)을 가지고 있는 컴퓨터다.
- 요청을 처리하고 응답하는 주체
예
우리가 구글 사이트에 접속한다는 것은?
== 어딘가에 있는 구글 사이트를 가지고 있는 컴퓨터에게, ❛구글 홈페이지.html❜을 달라고 요청하는 것!
- 구글.html 파일을 요청함
- 구글 서버가 요청을 받아서 구글.html 파일을 우리 컴퓨터에게 전달함
- 우리 컴퓨터의 웹 브라우저가 구글.html 파일을 해석해서 보여줌
다시 말해서,
웹 브라우저 (Client) → 구글 서버 (Server) → 웹 브라우저 (Client)
의 과정으로 구글 사이트에 접속하는 것이다.
웹 브라우저와 웹 페이지
웹 브라우저의 역할
- 인터넷에서 내가 원하는 페이지를 찾아서 보여주고, 하이퍼 링크를 통해 다른 페이지로 이동할 수 있게끔 도와주는 프로그램
- HTML 파일을 보기 편하도록 바꿔주는 프로그램이다. (== 렌더링, Rendering)
웹 페이지(Web Page)란?
- 우리가 보는 모든 화면 하나하나가 웹 페이지이다.
정적 웹 페이지(Static Web Page)
- 작성한 상태를 그대로 제공하는 웹 페이지이다.
- 모든 상황에서 동일한 내용을 전달한다.
- 우리가 작성한 HTML을 말한다.
동적 웹 페이지(Dynamic Web Page)
- 요청에 따라 보여주는 모습이 수정되는 웹 페이지이다.
- 포털 사이트에 A유저가 로그인했을 때와 B 유저가 로그인했을 때의 화면이 다르다.
- 받은 메일의 갯수, 가입한 카페 등등
- 요청을 받아서 적절한 응답을 만들어주는 주체가 필요하다.
- Django
웹 개발의 요청과 응답
요청(Request)
- 클라이언트(웹 브라우저, 모바일 앱 등)가 서버에게 특정한 작업을 요청
- 클라이언트의 정보, 요청의 형식, 인증 정보 등을 포함
- 데이터를 포함하며, JSON이나 HTML 폼 데이터와 같은 형식으로 전달
- 클라이언트가 요청하는 것이 무엇인지 URL을 보면 파악할 수 있다
응답(Response)
- 서버가 클라이언트의 요청을 받고 처리한 후에 클라이언트에게 결과를 전송
- 결과에는 여러 가지 부가적인 정보를 포함함
- 클라이언트가 요청한 작업에 따라 다양한 형태로 전송
- HTML, JSON, XML 등
요청과 응답 과정의 예시는 앞서, Django에서 프로젝트 생성과 App 생성 과정을 들 수 있다.
'공부 > Django 공부' 카테고리의 다른 글
[Django] ⭐️⭐️⭐️ urls.py, views.py 및 Templates 처리하기 ⭐️⭐️⭐️ (0) | 2025.01.11 |
---|---|
[Django] MTV Pattern (0) | 2025.01.11 |
[Django] Django 앱(App) 생성 및 등록하기 (0) | 2025.01.10 |
[Django] ⭐️Django 프로젝트(Project) 시작⭐️ (0) | 2025.01.04 |
[Django] ⭐️개발 환경 구성하기⭐️ (0) | 2025.01.04 |