HTTP 요청 프로토콜
Get과 Post
Get
- Clinet가 Server로부터 문서를 읽어오려 할 때 사용
- Get도 서버로 보낼 수 있음
- Body가 없음
- URL에 정보를 포함해 보냄. Url에 ?id=1199 이런식으로 적힘
Post
- Clinet가 Server에게 어떤 정보를 전달 할 때 사용
- 로그인 시 아이디, 비밀번호 같은 중요 정보 전달
- Body에 정보를 포함시킴
- URL에 정보가 포함되어 있지 않기 때문에 입력 폼이 필요함
URL과 URI
- Locator
- 서버의 특정 위치에 있는 자원을 요청
- 구조 scheme ://host[:port][/path][?query] ex) http ://IP주소 : 포트 (또는 도메인 주소) /폴더이름/파일이름
- ID, ID와 매핑된 자원을 요청
- 장고에서는 urls.py 파일에 매핑
HTTP 응답 프로토콜
상태 코드
200번 : 요청 성공
400번대 : 클라이언트에서 문제
403번 : 권한이 없는 페이지 요청 시 ( 관리자만 접속할 수 있는 페이지에 클라이언트가 접속할 시)
404번 : 서버에 없는 페이지 요청 시
500번대 : 서버에서 문제
500번 : 서버의 내부에서 오류 발생(코드 잘못썼을 때)
503번 : 최대 세션 수 초과
절대경로와 상대경로
절대경로
- 현재 위치 기준으로 어딘가로 이동
- href = “/aabbccdd”
상대경로
- 맨 처음부터 경로를 찾기때문에 모든 경로를 다 입력해주어야 함
- 기준이 가장 위에 있는 디렉토리로, 리눅스의 경우 root
- href = “aabbccdd”
장고에서
상대경로는 https:~~~:8000/ex01/func1 를 하면 현재 기준이기 때문에 ex01/a로 이동함. (가장 뒤 슬래시 기준)
절대경로는 똑같이 입력 하면 8000/a 로 됨. (IP 제외 가장 앞 슬래시 기준)