이번에는 HTTP 헤더에 대해서 알아보려고 한다. HTTP 헤더란? HTTP 전송에 필요한 모든 부가정보를 넣는 부분이다. 예를 들어 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트 등등 많은 정보가 들어가게된다. 그렇기에 무수히 많은 필드가 존재하며, 필요시에는 임의의 필드를 만들 수도 있다. 헤더는 보통 다음과 같은 구조를 가지고 있다. GET /search?q=hello&hl=ko HTTP/1.1 Host: www.google.com ----------------------------------------------- HTTP/1.1 200 OK Content-Type: text/html;charset=UTF-8 Content-Length:3323 ... 위 내용에서..
이번엔 HTTP 상태코드에 대해서 알아보려고 한다. HTTP 상태코드란? 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능이다. 100번대 ~ 500번대에 대한 상태코드가 정의 되어있고 그 내용들을 살펴볼 예정이다. 1xx (Informational) - 요청이 수신되어서 처리 중인 상태 100번대의 상태코드는 거의 사용되지 않기에 개념만 알아두면 될 것 같다. 2xx (Successful) - 요청이 정상 처리된 상태 종류로는 다음과 같다. 200 OK 가장 많이 볼 수 있는 상태코드이다. 요청이 성공적으로 처리됬을 때의 상태이다. HTTP/1.1 200 OK Content-Type: appplication/json Content-Length: 34 { "username":"G..
오늘은 이전글인 HTTP 메서드에 대한 연장선인 활용방법에 대해서 알아보겠다. HTTP 메서드는 서버에 데이터를 전송하게 될 때 사용하게된다. 먼저 GET 메서드이다. GET - 쿼리 파라미터를 통한 데이터 전송 주로 검색어를 치거나 정렬 필터를 사용할 때 사용하게된다. (조회할 때 주로 사용) 다음으로는 POST, PUT, PATHC 메서드이다. POST, PUT, PATCH - 메시지 바디를 통한 데이터 전송 주로 회원가입, 상품주문, 리소스 등록과 변경 등 사용된다. 4가지 상황을 예로 들어 각 메서드를 활용해보자. 1. 정적 데이터 조회 이미지, 정적 텍스트 문서를 얻어올 때 사용된다. 정적 데이터는 일반적으로 쿼리 파라미터 없이 리소스 경로로 단순하게 조회가 가능하다. GET ..
이번에는 HTTP의 메서드에 대해서 알아보려고한다. 우리가 HTTP API를 설계해야하는 상황이 왔을 때 우리는 HTTP 메서드에 대해서 알아두어야만 한다. 예를들어 조회기능, 등록 기능, 수정 기능, 삭제 기능등 여러가지 기능을 구현 할 때에 말이다. 그렇다면 많이 쓰이는 HTTP의 메서드들에 대해서 알아보자 먼저 Get 메서드이다. Get : 리소스 조회 - 서버에 전달하고 싶은 데이터는 query를 통해서 전달함 (메시지 바디를 통할 수도 있지만 권장하지 않는다.) *** Get 방식(예제) Get /members/100 HTTP/1.1 Host: localhost:8080 이런 식으로 접근 = 요청 members/100 안에있는 메시지 내용을 가져와서 응답 데이터를 보낸다. 다음..
이번 글에서는 HTTP에 대해서 알아보려고 한다. HTTP (HyperText Transfer Protocol) HTTP는 말그대로 HyperText를 전송하기 위한 프로토콜이다. (HyperText란 기존의 그냥 문서에 쓰이는 텍스트가 아니라 비선형적인 신개념 텍스트라는 의미에서 만들어진 용어이다. 예를 들어서 하이퍼텍스트에는 하이퍼링크를 통해 다른 문서로 이동할 수도 있는 기능들이 존재한다. ) 주로 HTML 문서를 주고 받는데 쓰인다. (여기서의 HT도 하이퍼텍스트이다.) 지금은 텍스트뿐만이 아니라 이미지, 음성, 영상, 파일 등등 거의 모든 형태의 데이터를 전송이 가능하다. 바야흐로 HTTP의 시대라고 할 수 있을만큼 요즘에는 HTTP를 어디에서나 많이 사용하고 있다. 이 HTTP에..