문제: 회원에 대한 조회
url는 리소스를 판별하는데 무조건 써야함(명사) ex) 미네랄 그 자체 , 미네랄을 캐라가 아니다.
해결
HTTP 매서드를 이용해 동사를 표현( get, put post...)
1.GET
2.POST
메세지 바디를 통해 서버로 내 요청 데이터 전달( 서버가 아직 식별하지 않은 새 리소스 생성) ex) member 리소스
ex) 신규데이터 등록,
요청 데이터를 신규리소스
3.PUT
기존에 데이터가 완전히 대체되어버림. 만약에 없으면 새롭게 데이터 생성
4. PATCH
부분 변경
5. DELETE
매서드의 속성
1.안전 :해당 리소스를 호출하는 거기 때문에
2.멱등 : 100번 호출 하든 결과가 똑같다. POST는 멱등하지 않다. ex) 배송 2번 호출, 결제
(어떤 요청을 했어도 서버가 잘 안됐을 수도 있지만 계속 같은 결과이기 때문에 계속 요청할 수 있다)
(멱등은 외부 요인 Guest2가 put 요청을 해서 Guest1의 첫 번째 두 번째 결과가 다를 수 있지만
이것 까지 고려하지 않는다)
3.캐시가능 (웹이 또 요청하지 않기 위해서 미리 저장하는 행위)
매서드의 활용
1.클라이언트에서 서버로 데이터 전송
HTML FORM을 통해 데이터 보내기 ex) 회원가입, 상품주문, 데이터 변경
1. <form action="/save" method='post'>
2. 웹 브라우저가 생성산 HTTP 메세지 생성
POST /save HTTP/1.1
Host:localhost8080
content-Type: application/x.www-form.urlencoded
username=kim&age=20
참고 if 파일 업로드 같은 경우는 Content-type:multipart/form-data
HTTP API (JS 의 AJAX, REACT VUE)
참고 JSON vs XML 공부
'server' 카테고리의 다른 글
http 상태코드 (0) | 2021.11.03 |
---|---|
회원관리 시스템 (0) | 2021.11.03 |
URI URL 그리고 통신 동작 원리 (0) | 2021.11.02 |
HTTP 흐름으로 이해하기 (0) | 2021.11.02 |
node js server 첫 스타트!! (0) | 2021.10.04 |