Backend - RESTful하게 API 설계하는 방법
·
Network
본 글은 아래 링크의 포스트를 번역한 내용입니다.https://daily.dev/blog/restful-api-design-best-practices-guide-2024 RESTful API Design Best Practices Guide 2024Guide to RESTful API design best practices in 2024 covering resource-based architecture, stateless communication, client-server separation, URI design, HTTP method usage, security, performance optimization, and more.daily.dev 주요 권장 사항아래 예시를 따르면 사용하기 쉽고 유지보수 및..
HTTP - 헤더 정보
·
Network
Referer 현재 요청된 페이지의 이전 웹 페이지 주소 A -> B로 이동하는 경우 B를 요청할 때 Referer: A를 포함해서 요청 Referer를 사용해서 유입 경로 분석 가능 요청에서 사용 참고: referer는 단어 referrer의 오타 User-Agent 유저 에이전트 애플리케이션 정보 클라이언트의 애플리케이션 정보 (웹 브라우저 정보, 등등) 통계 정보 어떤 종류의 브라우저에서 장애가 발생하는지 파악 가능 요청에서 사용 ex) Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Server 요청을 처리하는 ORIGIN 서버의 소프트..
HTTP - 알아두면 좋은 URI 설계 개념
·
Network
문서(document) 단일 개념(파일 하나, 객체 인스턴스, 데이터베이스 row) ex) /members/100, /files/star.jpg 컬렉션(collection) 서버가 관리하는 리소스 디렉터리 서버가 리소스의 URI를 생성하고 관리 ex) /members 스토어(store) 클라이언트가 관리하는 자원 저장소 클라이언트가 리소스의 URI를 알고 관리 ex) /files 컨트롤러, 컨트롤 URI 문서, 컬렉션, 스토어로 해결하기 어려운 추가 프로세스 실행 동사를 직접 사용 ex) /members/{id}/delete https://restfulapi.net/resource-naming/ REST API URI Naming Conventions and Best Practices In REST, h..
HTTP - HTTP 메서드
·
Network
API는 리소스를 기반으로 설계하자 가장 중요한 것은 리소스를 식별할 수 있어야 하는 것 URI는 리소스만 식별해야 한다. 리소스와 해당 리소스를 대상으로 하는 행위는 분리하자 리소스: 회원 행위: 조회, 등록, 삭제, 변경 리소스는 명사, 행위는 동사 행위는 HTTP 메서드로 구분한다. HTTP 메서드 종류 주요 메서드 GET : 리소스 조회 POST : 요청 데이터 처리, 주로 등록에 사용 PUT : 리소스를 대체, 해당 리소스가 없으면 생성 PATCH : 리소스 부분 변경 DELETE : 리소스 삭제 기타 메서드 HEAD : GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환 OPTIONS : 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명 (주로 CORS에서 사용) CONNEC..
HTTP - HTTP 기본 메시지
·
Network
HTTP/1.1 200 OK// HTML 버전, HTTP 상태 코드, 이유 문구 Content-Type: text/html;charset=UTF-8// HTTP 헤더 Content-Length: 3423// HTTP 헤더 ...// HTTP 바디 HTTP 상태 코드 요청 성공, 실패를 나타내는 코드 200: 성공 400: 클라이언트 요청 오류 500: 서버 내부 오류 이유 문구 사람이 이해할 수 있는 짧은 상태 코드 설명 글 HTTP 헤더 HTTP 전송에 필요한 모든 부가정보 메시지 바디의 내용, 메시지 바디 크기, 압축, 인증, 요청 클라이언트(브라우저) 정보, 서버 애플리케이션 정보, 캐시 관리 정보 표준 헤더가 너무 많음 필요시 임의의 헤더 추가 가능 header-field = field-name:..
Network - TCP, UDP
·
Network
TCP/IP 4계층 모델 TCP와 UDP는 TCP/IP 4계층 모델을 기준으로 IP 프로토콜의 계층인 인터넷 계층의 상위에서 동작한다. 전송계층에 속하는 TCP와 UDP는 2계층에서 동작하는 IP와 4계층에서 동작하는 애플리케이션을 중개하는 역할을 한다. 4층 응용 계층 HTTP, DNS, FTP, ... 애플리케이션에 맞추어 통신 3층 전송 계층 TCP, UDP, ... IP와 애플리케이션을 중개해 데이터를 확실하게 전달 2층 인터넷 계층 IP, ICMP, ARP, RARP 네트워크 주소를 기반으로 데이터를 전송 1층 네트워크 접근 계층 Ethernet, wifi, ... 컴퓨터를 물리적으로 네트워크에 연결해서 기기 간에 전송이 가능하도록 함 TCP, UDP 특징 TCP는 3-way handshake ..
Cold Bean
'Network' 카테고리의 글 목록