📌Request Line
protocol/version,URL(URI, 자원에 대한 식별자, 명사),http Method(자원에 대한 행위, 동사)
http(request) Method : 요청의 의도(목적)와 패키징 방식을 표현.
📌http(request) Method종류
GET(R) : default method, 서버의 자원 조회, body영역이 형성되지 않음
POST(C) : 클라이언트의 의도적 전송 컨텐츠가 존재함. body 영역이 형성됨. content-* 종류의 요청 헤더들이 존재함.
PUT/PATCH(U) PUT : 전체 데이터 수정 / PATCH : 부분 데이터 수정
DELETE(D)
OPTION : preFlight 요청으로 본 요청의 메소드 지원 여부 파악
HEAD : response body 가 없는 형태로 응답이 전송됨.
TRACE : server debugging용도로 제한적 사용.
ex) /member/memberList.do
/member/memberVies.do?memId=a001
/member/memberInsert.do
/member/memberUpdate.do
/member/memberDelete.do
RESTful URI구조
/member (GET) -member에 대한 정보를 가져와라
/member/a001 (GET) - a001이라는 member에 대한 정보를 가져와라
/member (POST) member라는 정보에 대해 전송
/member/a001 (PUT) a001이라는 member에 대한 정보를 update
/member/a001 (DELETE) a001이라는 member에 대한 정보를 삭제
/member (DELETE) member에대한 정보를 삭제
📌Request Header
클라이언트와 요청을 수식하기 위한 비의도적 메타 데이터가 들어가는 영역.
<%=request.getHeader("Accept") %>
name/value 쌍의 문자열 형태로 전송
ex) Accept-* : 응답 컨텐츠의 속성을 제한하는 요청 헤더.
Content-* : request body 를 통해 전송되는 컨텐츠의 속성을 표현한는 헤더.
Content-Type : application/xml
Content-Length : 12222
User-Agent : 클라이언트가 사용하는 시스템에 대한 정보를 표현하는 헤더.
ex) Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36
(현재 사용하는 클라이언트의 OS정보) HTML의 번역을 담당
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.57
📌Request Body(Content Body, Message Body)
메소드가 Post여야만 존재
: 클라이언트가 전송하는 의도적 입력 데이터(컨텐츠) 영역.
: Content-Type요청 헤더에 따라 컨텐츠 형식이 다를 수 있음.
ex) Content-Type : application/x-www-form-urlencoded -> 파라미터로 전송된 문자열
Content-type : multipart/form-data -> 파트 형태로 전송된 컨텐츠
content-Type : application/json -> JSON 형태로 전송된 컨텐츠
'웹기반 애플리케이션' 카테고리의 다른 글
웹기반 애플리케이션JSP 9일차 📃_직렬화·역직렬화·마샬링·언마샬링 (0) | 2023.03.06 |
---|---|
JSP📃_보충_Stream정리 (0) | 2023.03.06 |
JSP 7일차 📃_자원의 종류와 식별방법 (0) | 2023.02.27 |
JSP 6일차 📃_JSP?, JSP소스구성요소, JSP컨테이너의 역할, Servlet컨테이너의 역할 (0) | 2023.02.24 |
JSP 5일차 📃_템플릿 엔진, MIME (0) | 2023.02.24 |