인터넷의 이해
1. 웹 프로토콜(HTTP)
- 통신절차
- HTTP Request
- HTTP Response
- 프록시 툴을 이용한 HTTP분석 (Paros:데이터 변조 프로그램)
동작원리 : 사용자는 웹 브라우저를 통해 주소 입력 시 웹 브라우저에는 요청한 페이지가 로딩된다.
stateless의 문제점
-> 동일한 클라이언트의 모든 요청에 매번 새로운 연결/해제의 과정 거쳐야 하므로 오버헤드 발생
= 개선 : 설정된 시간만큼 HTTP는 서버와 연결을 유지한 채 그 시간 안의 새 요청은 기존의 연결을 사용하는 방식으로 해결
*HTTP Request -> HTTP Response
응답코드
404 - Not Found (요청한 페이지 없음)
500 - Internal Server Error (문법적인 오류)
200 - OK (요청성공)
302 - Object Moved, Move Permanantly (즉시 이동)
304 - Not Modified ((로컬캐쉬정보 이용 서비스) : 수정안됨)
201 - Created (PUT메소드에 의해 원격지 서버에 파일이 정상적으로 생성됨)
401 - Unauthorized (인증이 필요한 페이지를 요청한 경우 인증실패)
403 - Forbidden (접근금지)
*Get방식, Post방식
1)Get방식 : 브라우저 주소창에 데이터가 노출되면서 전송
HTTP Header에 파라미터(쿼리스트링) 담겨서 전송
-> 요청 방식은 요청 URI(URL)이 가지고 있는 정보를 검색하기 위해 서버측에 요청하는 형태 -> 구조(URI + QueryString) : http://도메인/board/default.asp uri
http://도메인/bview.asp?bidx=7 uri QueryString
2)Post방식 : 브라우저 주소창에 데이터가 노출되지 않으면서 전송
HTTP Body에 파라미터(쿼리스트링) 담겨서 전송
-> 게시판 등과 같은 폼 데이터 및 서버 사이드 페이지를 위해 처리하기 위해 POST방식으로 전송
-> 구조(URI + QueryString) : http://도메인/board/default.asp uri (http header에 포함)
board_idx=7 QueryString (http body에 포함)
3)PUT, DELETE, TRACE, OPTION 방식들도 있음.
*HTTP Request
쿠키 : 인증정보가 담긴 파일(Client PC)
-HTTP 프로토콜(1.1 이전 Stateless, 1.1버전 KeepAlive)의 세션 유지하지 않는 성질을 소프트웨어적으로 보완하는 방법
1) Session객체 (Session변수)이용 : Server측 객체
2)Cookie 이용 : Client측에 저장되는 cookie