HTTP 메서드는 클라이언트가 서버에게 무엇인가를 요청할 때 기대하는 행동이다. 주로 사용하는 메서드는 다음과 같이 5가지가 있다. GET : 리소스 조회 POST : 요청 데이터 처리, 주로 등록에 사용 PUT : 리소스를 대체, 해당 리소스가 없으면 생성 PATCH : 리소스 부분 변경 DELETE : 리소스 삭제 이 외에도 HEAD, OPTIONS, CONNECT, TRACE와 같은 메서드들이 존재한다. HEAD : GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환 OPTIONS : 대상 리소스에 대한 통신 가능 옵션(메서드)을 설명(주로 CORS에서 사용) CONNECT : 대상 자원으로 식별되는 서버에 대한 터널을 설정 TRACE : 대상 리소스에 대한 경로를 따라 메시지 루..
HTTP는 HyperText Transfer Protocol의 약어로, 처음에는 HTML을 전송하는 프로토콜로 시작했지만, 현재는 모든 것을 HTTP 메시지에 담아 전송한다. 아래와 같은 것들이 있다. HTML, TEXT 이미지, 영상, 음성, 파일 ... JSON, XML(API) 거의 모든 형태의 데이터 전송 가능 서버 간에 데이터를 주고받을 때도 대부분 HTTP를 사용 가장 많이 사용하고, 우리에게 가장 중요한 버전은 HTTP/1.1이다. HTTP/1.1에 대부분의 모든 기능이 들어있고, HTTP/2나 HTTP/3은 성능 개선에 초점이 맞춰져 있는 버전이다. HTTP/1.1, HTTP/2는 TCP 위에서 동작한다. 하지만, HTTP/3는 UDP 기반으로 동작한다. HTTP 특징 HTTP의 특징들을 ..
URI (Uniform Resource Identifier) 우선 URI는 로케이터(Locator), 이름(Name) 또는 둘 다 추가로 분류될 수 있다. 그림을 보고 설명을 해보면, URI라는 가장 큰 개념이 있고 그 안에 크게 평소에 많이 들어봤을 URL(리소스의 위치)과 URN(리소스의 이름)이 있다. URL과 URN은 다음과 같이 생겼다. URL은 보다시피 우리가 흔히 인터넷에서 사용하는 형식이고, URN은 단순히 이름을 부여해 놓은 것이다. 그래서 URN은 거의 사용하지 않는다. 그럼 돌아와서 URI의 뜻에 대해 살펴보면 Uniform : 리소스를 식별하는 통일된 방식 Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음) Identifier : 다른 항목과 구분하는데 필요한 ..
Web, HTTP 모두 인터넷 네트워크망에 기반하여 동작한다. 따라서, HTTP 학습을 위한 사전 기본 학습의 개념으로 인터넷 통신, IP, TCP, UDP, PORT, DNS에 대해 간단하게 알아보자. 인터넷에서 컴퓨터 간 통신 만약 클라이언트와 서버가 바로 옆에 붙어 있다면 단순하게 케이블을 연결해 요청을 보내고 응답을 받는 방식을 사용하면 될 것이다. 하지만, 둘이 멀리 떨어져 있어 인터넷 망을 거쳐야 한다면 중간에 수많은 노드(서버)를 거쳐야 한다. 이때 어떤 규칙을 사용해서 넘어가게 될까? 이를 이해하기 위해 IP에 대한 학습이 필요하다. IP(Internet Protocol) 복잡한 인터넷 망에서 데이터(메시지)를 보내기 위해서는 최소한의 규칙이 필요하다. 이때 IP 주소를 사용하게 되는데, ..