<수업필기>mashalling : native data 를 공통 표현 방식(json, xml)형태로 바꾸는 작업.(직렬화와 비교)
unmashalling : 공통 표현 방식(json, xml)의 데이터를 native 언어 형태로 바꾸는 작업.
xml : 무겁다
json : 가볍다
Traversing 기능:
각각의 요소간의 접근방법
예를 들어 어떤 요소의 자식요소, 부모요소를 찾아갈 때 사용하는 방법
요소에 id 속성을 부여해서 접근하는 방법이 있지만 traversing을 사용하면 id를 부여하지 못하는
상황에서도 접근이 가능하다.
📌Http Request packaging
Request Line : protocol/version, URL(URI, 자원에 대한 식별자, 명사), http Method(자원에 대한 행위, 동사)
http(request) Method : 요청의 의도(목적)와 패키징 방식을 표현
이름 | 조작 | Method |
Create | 생성 | POST |
Read | 읽기 | GET |
Update | 갱신 | PUT |
Delete | 삭제 | DELETE |
GET(R) : default method, 서버로부터 데이터(자원)를 조회하기 위한 목적의 리퀘스트
body 영역이 형성되지 않음
POST(C) : 서버로 데이터를 전송하기 위한 목적의 리퀘스트
클라이언트의 의도적 전송 컨텐츠가 존재함.
body 영역이 형성됨.
content-*종류의 요청 헤더들이 존재함
HEAD : response body 가 없는 형태로 응답이 전송됨
GET방식과 동일하나 응답 메시지를 제외한 헤더 등의 메타데이터만 조회
* PUT, DELETE
<form method="post">
<input type="hidden" name="_method" value="put">
<input type="hidden" name="_method" value="delete">
</form>
PUT/PATCH(U) :
PUT: 전체를 한 번에 수정,이미 존재하는 서버상의 리소스를 변경하기 위한 리퀘스트 /body 영역이 형성됨
PATCH: 부분 수정/ body 영역이 형성됨
DELETE(D) : 서버 상의 리소스를 삭제하기 위한 리퀘스트
OPTION : 서버가 현재 지원하는 http 메소드를 조회하기 위한 리퀘스트
preFlight : 요청으로 본 요청의 메소드 지원 여부 파악
TRACE : server debugging 용도로 제한적 사용, 요청 데이터 중 일부를 다시 돌려받는 리퀘스트
CONNECT : HTTP 터널링을 수행하기 위해 터널 예약을 위한 리퀘스트
ex) /member/memberList.do
/member/memberView.do?memId=a001
/member/memberInsert.do
/member/memberUpdate.do
/member/memberDelete.do
RESTful URI 구조
/member (GET)
/member/a001 (GET)
/member (POST)
/member/a001 (PUT)
/member/a001 (DELETE)
Message 요소 | 포함데이터 |
Requset Line | 편지봉투의 수신란 HTTP-Method Requset-URI Protocol-version |
Request Header | 요청을 구분하기 위한 클라이언트에 대한 부가정보(메타데이터) 헤더명=헤더값의 쌍으로 표현된 토큰들로 구성되는 영역 |
Request Body(Content Body, Message Body) | 편지의 내용 서버로 전송하기 위한 직접 메시지로 구성되는 영역 단, post 방식일 경우에만 형성 |
'웹기반 애플리케이션' 카테고리의 다른 글
Stream이란? (0) | 2023.03.06 |
---|---|
Http Request packaging(2) (0) | 2023.03.03 |
JSP(Java Server Page)란? (0) | 2023.03.02 |
자원의 종류와 식별 방법, URI(URL,URC,URN) (0) | 2023.02.27 |
서블릿(Servlet)이란? (0) | 2023.02.27 |