본문 바로가기

http

HTTP HTTP(HyperText Transfer Protocol) 란? - 인터넷에서 데이터를 주고 받을 수 있는 프로토콜 프로토콜(Protocol) 이란? - 개발에서 정보를 교환하기 위해 필요한 규칙 HTTP 의 기본적인 개념 및 구조 정리 링크: https://gyurim.tistory.com/category/HTTP%20%EC%9B%B9%20%EA%B8%B0%EB%B3%B8%20%EC%A7%80%EC%8B%9D HTTP/1.0 - 기본적으로 한 연결당 하나의 요청을 처리하도록 설계 - 서버로부터 파일을 가져올 때마다 TCP의 3-way-handshake를 계속 열어야 함 -> RTT 증가 -> 서버 부담 증가 -> 사용자 응답 시간 증가 RTT(Round Trip Time) - 패킷이 목적지에 도달하고.. 더보기
HTTP 상태코드 상태 코드 : 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 - 1xx (Informational) : 요청이 수신되어 처리중 (거의 사용되지 않음) - 2xx (Successful) : 요청 정상 처리 - 3xx (Redirection) : 요청을 완료하려면 추가 행동이 필요 - 4xx (Client Error) : 클라이언트 오류, 잘못된 문법등으로 서버가 요청을 수행할 수 없음 - 5xx (Server Error) : 서버 오류, 서버가 정상 요청을 처리하지 못함 만약 모르는 상태 코드가 나타나는 경우? - 클라이언트가 인식할 수 없는 상태코드를 서버가 반환한다면? - 클라이언트는 상위 상태코드로 해석해서 처리 - 미래에 새로운 상태 코드가 추가되어도 클라이언트를 변경하지 않아도 됨 .. 더보기
HTTP 메서드 활용 클라이언트에서 서버로 데이터 전송 1. 쿼리 파라미터를 통한 데이터 전송 - GET - 주로 정렬 필터(검색어) 2. 메시지 바디를 통한 데이터 전송 - POST, PUT, PATCH - 회원 가입, 상품 주문, 리소스 등록, 리소스 변경 대표적 4가지 예시 1. 정적 데이터 조회 2. 동적 데이터 조회 3. HTML Form을 통한 데이터 전송 4. HTTP API를 통한 데이터 전송 1. 정적 데이터 조회 - 쿼리 파라미터 미사용 - 이미지, 정적 텍스트 문서 - 조회는 GET 사용 - 정적 데이터는 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회 가능 2. 동적 데이터 조회 - 쿼리 파라미터 사용 - 쿼리 파라미터를 기반으로 정렬 필터해서 결과를 동적으로 생성 - 주로 검색, 게시판 목록.. 더보기
HTTP 기본 모든 것이 HTTP HTTP(Hyper Text Transfer Protocol) HTTP 메시지에 모든 것을 전송 - HTML, TEXT - IMAGE, 음성, 영상, 파일 - JSON, XML(API) - 거의 모든 형태의 데이터 전송 가능 - 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 기반 프로토콜 - TCP : HTTP/1.1, HTTP/2 - UDP : HTTP/3 - 현재 HTTP/1.1 주로 사용 - HTTP/2, HTTP/3 도 점점 증가 HTTP 특징 - 클라이언트 서버 구조 - 무상태 프로토콜(스테이스리스) 지향, 비연결성 - HTTP 메시지 - 단순함, 확장 가능 클라이언트 서버 구조 - Request Response 구조 - 클라이언트는 서버에 요청을 보내고, 응답을 대.. 더보기