인터넷 프로토콜 스택의 4계층애플리케이션 계층 - HTTP, FTP전송 계층 - TCP, UDP인터넷 계층 - IP네트워크 인터페이스 계층 내 IP와 데이터를 전송 할 상대방 IP 주소를 알아야 데이터를 전송 할 수 있고 패킷 단위로 인터넷 노드에 따라 데이터 전송패킷
Uniform - 자원을 식별하는 통일된 방식Resource - 자원(URI로 식별할 수 있는 모든 것)Identifier - 다른 항목과 구분하는데 필요한 정보URI는 locator, name 또는 둘 다 추가로 분류될 수 있음자원이 어디 있는지 URI로 식별Reso
Request, Response 구조클라이언트는 서버에 요청을 보내고 응답을 기다린다.(대기한다)서버는 클라이언트 요청에 대한 응답 결과를 만들어 응답한다.서버가 클라이언트의 상태를 보존하지 않음장점 : 서버의 확장성이 높음, 각 요청에 다른 서버들이 호출되어도 장애가
HTTP 메시지 구조 start-line : request-line / status-line request-line : method SP(공백) request-target SP HTTP-version CRLF
HTTP API URI 설계 설계시 가장 중요한 것은 리소스를 식별 하는 것 그렇다면 리소스란? 게시판에 게시글 작성, 게시글 조회, 게시글 삭제, 게시글 수정으로 예를 들자면 게시판이라는 개념 자체가 리소스가 되고 게시글 작성, 조회 삭제, 수정은 행위로
HTTP Method 활용 정적 데이터 조회 GET /static/img/strawberry.jpg HTTP/1.1 Host: localhost:8080 GET method를 사용하며 URI 경로만으로 리소스를 내려받을 수 있음 이미지, 정적 테스트 문서 쿼리가 필요
회원 등록 POST /members회원 목록 GET /members회원 조회 GET /members/{id}회원 수정 PATCH, PUT, POST /members/{id} 보통 PATCH를 사용하지만, 게시판의 게시글을 수정하는 경우 PUT을 사용해도 무방회원 삭제,
상태코드 1XX (Informational) : 요청이 수신되었으나 처리중 (거의 사용하지 않음) 2XX (Successful) : 정상 처리 3XX (Redirection) : 요청을 완료하기 위해 추가적인 동작 필요 4XX (Client Error) : 클라이언트
캐시 서버에서 응답시 헤더에 캐시 헤더를 추가해서 응답할 경우 웹 브라우저 캐시 저장소에 저장된다. cache-control: max-age=60 캐시의 만료시간을 60초로 지정 같은 요청을 할 경우 캐시 저장소를 찾아보고 캐시를 사용할 수 있는 경우 서버에 요청
HTTP Header HTTP 전송에 필요한 모든 부가정보가 들어가 있으며 필요시 임의의 헤더 추가 가능 분류 과거 (RFC2616) General : 메세지 전체에 적용되는 정보 ex) Connection: close Request : 요청 정보 ex) U