데이터 전달 방식
4가지상황
정적데이터조회
동적데이터조회
HTML Form을 통한 데이터 전송
HTML API를 통한 데이터 전송
action : /save라는곳에 저장됨
method : 전송방법 post(저장) or get(조회)
form의 submit버튼을 누르면 웹브라우저가 데이터를 읽어서 HTTP메시지를 생성한다.
이때 HTTP 메시지는 Content-Type: application/x-www-form-uriencoded
사용하며, 전송할 데이터를 post는 메시지바디에, get은 uri에 넣는다.(key=value, 쿼리 파라미터 형식)
application/x-www-form-uriencoded
사용multipart/form-data
회원 목록 /members => GET
회원 등록 /members => POST
회원 조회 /members/{id} => GET
회원 수정 /members/{id} => PATCH, PUT, POST
회원 삭제 /members/{id} => DELETE
POST 신규자원등록
클라이언트는 등록될 리소스의 URI를 모른다. /members ->POST
요청을보내면 서버에서 새로 등록될 리소스의 URI를 생성해준다. /members/100
이러한 서버가 관리하는 리소스 디렉토리를 컬렉션이라고한다. 여기서 컬렉션은 /members
파일 목록 /files => GET
파일 등록 /files/{filename} => GET
파일 조회 /files/{filename} => PUT
파일 삭제 /files/{filename} => DELETE
파일 대량 등록 /files => POST
PUT 파일관리시스템
클라이언트는 등록될 리소스의 URI를 알고있어야한다. /files/{filename} => PUT
클라이언트가 리소스 디렉토리를 관리하고 생성해야한다.
이러한 클라이언트가 관리하는 리소스 디렉토리를 스토어라고한다. 여기서 스토어는 /files
POST와 PUT 신규등록의 차이
POST로 신규등록할때는 클라이언트는 서버에 그냥 요청, 서버가 만들어서 내려줌
PUT로 신규등록할때는 클라이언트는 URI를 알고있어야하므로, 클라이언트는 리소스의 URI를 전부 알고 관리해야한다.
=> 대부분 POST기반의 컬렉션을 사용한다.
여기서는 순수 GET,POST만 사용해서 알아보자.
회원 목록 /members => GET
회원 등록 폼 /members/new => GET
회원 등록 /members/new, /members => POST
회원 조회 /members/{id} => GET
회원 수정 폼 /members/{id}/edit => GET
회원 수정 /members/{id}/edit, /members/{id} => POST
회원 삭제 /members/{id}/delete => POST