[강의][Django] 1. 웹 프로그래밍과 Django

yejin20·2020년 10월 2일
0

강의

목록 보기
1/3
post-thumbnail

1-1. 네트워크

: 현재는 사물(냉장고,에어컨 등등 까지도) 대부분에도 네트워크가 연결되어있음.
: 네트워크에만 연결되어 있다면 네트워크에 존재하는 모든 사물들의 제어가 가능해짐. 편리함.


1-2. client와 server

client

: 서버에 접근해서 필요한 데이터를 받기 위해 사용하는 곳
ex) 디바이스(랩탑,컴퓨터,핸드폰 등)에 설치되는 소프트웨어들 .. 브라우저, 어플 등

server

: 특정 데이터가 모여있는 곳, 클라이언트들이 제공받는 서비스(=데이터)들이 모여있는 곳.


1-3. HTTP의 특징

: 4번의 연결해제는 http 프로토콜의 특징으로, 서버가 클라이언트에 응답하는 순간 연결을 해제시켜버린다. 이유는 서버에는 무-수-히 많은 클라이언트들이 요청을 해오기 때문에 다 연결될 수가 없음! 때문에 연결을 끊어버리고, 연결을 유지(라기보다는 기억에 가까운..)하기 위해 쿠키 또는 세션을 이용한다.

  • 쿠키 : client에 저장되는 정보
  • 세션 : server에 저장되는 정보

1-4. HTTP 처리 방식

: client에서 server에게 request하고,response를 받는 것처럼 server도 DB(datebase)에 request 하는 과정이 있음.


1-5. POST와 GET


- GET

: URL에 데이터가 노출됨.
ex) 네이버에 '날씨'라고 검색했을 때 GET 방식은 도메인(naver.com부분) 뒤에 /serach.naver?sm=top_hty&fbm=1&ie=utf8&query=날씨 라고 주소가 지저분하게 붙음(=쿼리스트링)

: 데이터 길이에 제한 있음
: 브라우저에 데이터가 노출되므로 상대적으로 보안에 취약함

- POST

: 요청 메세지에 데이터를 담아서 보냄(주소에서는 안보이고 따로 데이터를 담아서 보냄)
: 상대적으로 보안에 강함
: django에서 주로 사용함.


1-6. URL

  • URL 기본형태
    http://search.naver.com/search.naver?query=weather

http : 프로토콜
search.naver.com : 도메인(호스트) 👉🏻 여기까지 서버에 진입함
search.naver : 경로 - 서버 안에서 어떤 경로로 갈 것인가
query=weather : 쿼리 - 경로를 찾아서 어떤 요청을 할 것인가


  • REST URL형태 : URL처럼 구구절절X

search/today/weather : URL 맵핑(데이터)스트링


1-7. REST와 Django url 맵핑

: 규칙을 정해놓고 규칙에 따라 실행될 함수들을 정해놓음.

1-8. 서버 구성

client → [ 웹 서버 → 애플리케이션 서버 ] → DB

  • server = 웹 서버 + 애플리케이션 서버

  • 웹 서버
    : 주로 정적인 데이터 요청처리(그때그때 변하지 않는 데이터)
    : 동적인 데이터 요청시 애플리케이션 서버에 전달

  • 애플리케이션 서버
    : 주로 동적인 데이터 요청 처리(변하는 데이터)
    ex) 오늘 날씨 같은 데이터들
    : Database 연동

profile
개(발자 어)린이입니다

0개의 댓글