전체글236 [HTTP 웹 기본 지식] HTTP 메서드의 속성 안전(Safe Methods) 멱등(Idempotent Methods) 캐시가능(Cacheable Methods) 안전(Safe) 호출해도 리소스를 변경하지 않습니다. 계속 호출해서, 로그 같은게 쌓여서 장애가 발생하는 경우 안전은 해당 리소스만 고려합니다. 그런 부분까지 고려하지 않습니다. 멱등(Idempotent) f(f(x)) = f(x) 한 번 호출하든 두 번 호출하든 100번 호출하든 결과가 똑같습니다. 멱등 메서드 GET: 한 번 조회하든, 두 번 조회하든 같은 결과가 조회됩니다. PUT: 결과를 대체합니다. 따라서 같은 요청을 여러밴 해도 최종 결과는 같습니다. DELETE: 결과를 삭제합니다. 같은 요청을 여러번 해도 삭제된 결과는 똑같습니다. POST: 멱등이 아닙니다. 두 번 호출하면 .. 2021. 9. 22. [HTTP 웹 기본 지식] HTTP 메서드 - PUT, PATCH, DELETE PUT PUT /members/100 HTTP/1.1 Content-Type: application/json { "username": "hello", "age": 20 } 리소스를 대체 리소스가 있으면 대체 리소스가 없으면 생성 쉽게 이야기해서 덮어버림 중요! 클라이언트가 리소스를 식별 클라이언트가 리소스 위치를 알고 URI 지정 POST와 차이점 PATCH PATCH /members/100 HTTP/1.1 Content-Type: application/json { "age": 20 } 리소스 부분 변경 DELETE DELETE /members/100 HTTP/1.1 Host: localhost:8080 리소스 제거 참조 모든 개발자를 위한 HTTP 웹 기본 지식 2021. 9. 22. [HTTP 웹 기본 지식] HTTP 메서드 - GET, POST HTTP 메서드 종류 주요 메서드 GET: 리소스 조회 POST: 요청 데이터 처리, 주로 등록에 사용 PUT: 리소스를 대체, 해당 리소스가 없으면 생성 PATCH: 리소스 부분 변경 DELETE: 리소스 삭제 기타 메서드 HEAD: GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환 OPTIONS: 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용) CONNECT: 대상 자원으로 식별되는 서버에 대한 터널을 설정 TRACE: 대상 리소스에 대한 경로를 따라 메시지 루프백 테스트를 수행 GET GET /search?q=hello&hl=ko HTTP/1.1 Host: www.google.com 리소스 조회 서버에 전달하고 싶은 데이터는 query(쿼리 파라미터, .. 2021. 9. 22. [HTTP 웹 기본 지식] HTTP API를 만들어보자 API URI 고민 URI(Uniform Resource Identifier) 리소스의 의미 회원을 등록하고 수정하고 조회하는게 리소스가 아닙니다. 예) 미네랄을 캐라 -> 미네랄이 리소스 회원이라는 개념 자체가 바로 리소스입니다. 리소스 식별 방법 회원을 등록하고 수정하고 조회하는 것을 모두 배제 회원이라는 리소스만 식별하면 됩니다. -> 회원 리소스를 URI에 매핑 API URI 설계 리소스 식별, URI 계층 구조 활용 회원 목록 조회 /members 회원 조회 /members/{id} 회원 등록 /members/{id} 회원 수정 /members/{id} 회원 삭제 /members/{id} 참고: 계층 구조상 상위를 컬렉션으로 보고 복수단어 사용 권장(member -> members) 리소스와 행.. 2021. 9. 22. 이전 1 ··· 9 10 11 12 13 14 15 ··· 59 다음