4.1 HTTP 메소드 목록

HTTP 요청의 첫 번째 단어는 메서드 이름 입니다 . Java에서 메소드를 호출하는 것과 약간의 유사성도 있습니다. HTTP 요청의 메서드는 리소스에서 수행할 기본 작업을 정의합니다.

어떤 종류의 자원? 문제는 World Wide Web이 시작될 때 서버가 각각 HTML 파일을 저장하기 만하면 요청이 그러한 파일에 대한 것이었고 리소스 / 파일로 수행해야하는 몇 가지 작업을 설명했다는 것입니다.

HTTP 표준은 다음 메서드를 지정합니다.

# 방법 설명
1 얻다 지정된 리소스의 콘텐츠를 쿼리하는 데 사용됩니다 .
2 우편 클라이언트에서 서버로 데이터를 전송하는 데 사용됩니다. 서버의 리소스 상태를 변경합니다 .
놓다 클라이언트에서 서버로 데이터를 전송하는 데 사용됩니다. 서버에 새 리소스를 만듭니다 .
4 삭제 서버에서 지정된 리소스를 삭제합니다 .
5 머리 GET과 유사하지만 응답 본문이 없습니다. 응답 헤더를 가져오는 데 필요
6 옵션 지정된 리소스에 대해 지원되는 메서드 목록을 서버에 요청합니다.
7 추적하다 서비스 방법. 요청이 통과하는 서버에 의해 요청이 변경되고 있는지 확인할 수 있습니다.
8 연결하다 서비스 방법. 보안 연결을 설정하는 데 사용됩니다.

4.2 GET 방식

GET 메서드는 가장 널리 사용되는 HTTP 메서드입니다. 다음 페이지에 대한 요청을 서버에 보낼 때 브라우저가 호출하는 것입니다.

예를 들어 브라우저에서 http://codegym.cc/path/resource?param1=value1¶m2=value2 링크를 따라가면 브라우저는 이 시작 줄로 시작하는 CodeGym 서버에 HTTP 요청을 보냅니다 .

GET /path/resource?param1=value1&param2=value2 HTTP/1.1

결과적으로 서버는 요청 상태를 기록하고 요청된 리소스도 보낼 브라우저에 HTTP 응답을 보내야 합니다.

GET 메서드를 여러 번 호출해도 서버의 상태가 변경되지 않으며 서버는 매번 동일한 응답을 반환해야 한다고 가정합니다 . 따라서 프로토콜은 개체 캐싱에 대해 까다로운 제어가 있습니다.

첫째, GET 요청을 사용하여 받은 리소스는 브라우저가 재량에 따라 캐시할 수 있습니다(뉘앙스가 있음).

둘째, 서버에 요청을 보낼 때 특수 헤더 If-Modified-Sincedate. 요청한 리소스/문서가 지정된 날짜 이후에 변경된 경우 서버에서 이를 보냅니다. 변경하지 않으면 리소스 본문이 전달되지 않습니다. 클라이언트에 캐시되어 있다고 가정합니다.

페이지 캐싱(GET 요청)은 항상 사용되므로 이 문제를 확인하는 것이 좋습니다.

4.3 POST 및 PUT 방법

POST 메서드는 서버의 리소스를 업데이트하는 데 사용됩니다. 예를 들어 이미지를 서버에 업로드하면 브라우저에서 POST 요청을 보냅니다.

이 시작 줄로 시작하는 HTTP 요청을 고려하십시오.

POST /path/resource?param1=value1&param2=value2 HTTP/1.1
headers…

<request body>

결과적으로 서버는 요청 상태를 기록하고 수정된 리소스도 보낼 브라우저에 HTTP 응답을 보내야 합니다. POST 메서드를 여러 번 호출하면 서버의 상태가 변경되고 서버는 매번 다른 응답을 반환할 수 있습니다 .

GETPOST는 웹에서 가장 일반적인 두 가지 요청입니다. 방법이 어떻게 작동하는지 쉽게 기억할 수 있도록 다음 표를 고려하십시오.

얻다 우편 놓다
요구 URL만 URL 및 요청 본문 URL 및 요청 본문
답변 응답 코드 및 본문 응답 코드 및 본문 응답 코드

링크에서 POST 요청에 대한 자세한 내용을 읽을 수 있습니다 .

4.4 삭제 방법

마지막으로 DELETE 메서드 에 대한 정보입니다 . 여기에서는 모든 것이 간단합니다.

예를 들어 서버에서 특정 리소스를 삭제하려고 합니다. 우리는 그에게 다음과 같은 요청을 보냅니다.

DELETE  /path/resource?param1=value1&param2=value2 HTTP/1.1

이 요청을 받으면 서버는 지정된 리소스를 삭제합니다. 물론 삭제할 권한이 없다면 말입니다.