
HTTP 표준에서 GET 요청은 서버로부터 데이터를 요청하는 데 사용됩니다. 중요한 것은 GET 요청은 부작용이 없어야 한다는 것입니다. 즉, 서버의 상태를 변경하지 않아야 하며, 단순히 데이터를 조회하거나 가져오는 목적으로 사용됩니다.
GET 요청의 표준:데이터 전달 방법: 쿼리 파라미터 사용
GET 요청에서 클라이언트는 서버에 데이터를 전달하기 위해 쿼리 파라미터를 사용합니다.
쿼리 파라미터는 URL에 포함되며, ? 뒤에 key=value 쌍으로 전달됩니다. 여러 개의 파라미터는 &로 구분됩니다.
예를 들어, 사용자의 ID를 서버로 전달하여 해당 사용자의 정보를 가져오고자 할 때, URL을 다음과 같이 작성합니다:
GET /users?id=12345 HTTP/1.1
Host: example.com
이 요청에서 id=12345가 서버로 전달됩니다. 서버는 이 파라미터를 읽고, 해당 사용자의 정보를 반환할 수 있습니다.
본문(body) 없이 요청
GET 요청은 본문(body)을 가지지 않는 것이 표준입니다. 즉, 요청의 데이터는 모두 URL에 포함된 쿼리 파라미터를 통해 전달되어야 합니다.GET 요청의 본문을 무시하거나 허용하지 않습니다.안전하고 반복 가능한 요청
GET 요청은 안전한(Safe) 요청이어야 합니다. 즉, 서버의 상태를 변경하지 않는 요청이어야 합니다. 예를 들어, 데이터 조회, 검색, 필터링과 같은 작업에 적합합니다.GET 요청은 반복 가능한(Idempotent) 요청이어야 합니다. 동일한 GET 요청을 여러 번 실행해도 서버의 상태는 변하지 않으며 동일한 결과를 반환해야 합니다.GET 요청GET /search?q=react&sort=recent HTTP/1.1
Host: example.com
위의 예시는 react라는 검색어로 최근 순으로 정렬된 결과를 가져오는 GET 요청입니다. q=react와 sort=recent가 쿼리 파라미터로 URL에 포함되어 있습니다.
GET 요청의 표준은 쿼리 파라미터를 사용하여 데이터를 서버에 전달하며, 본문(body)을 가지지 않는다는 것입니다.GET 요청은 안전하고 반복 가능한 요청이어야 합니다. 즉, 서버의 상태를 변경하지 않고, 동일한 요청이 항상 동일한 결과를 반환해야 합니다.이 표준을 따른다면, 대부분의 서버 및 클라이언트 환경에서 호환성과 일관성을 유지할 수 있습니다. 만약 본문이 필요한 요청이 있다면, POST, PUT, DELETE와 같은 다른 HTTP 메서드를 사용하는 것이 적절합니다.