이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 11549|회답: 0

HTTP 프로토콜의 다양한 매개변수에 대한 상세한 설명

[링크 복사]
게시됨 2017. 5. 17. 오후 5:32:11 | | |

HTTP 메시지는 일반 ASCII 텍스트로 구성되어 있습니다. 메시지에는 헤더와 데이터 본체 부분이 포함됩니다. 메시지 헤더는 동작 단위이며, 각 줄은 CRLF(캐리지 리턴 및 줄 바뀐)로 끝납니다.
HTTP 요청:

예시는 다음과 같습니다:

GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate

username=Jinqiao&password=1234
RequestMethod: OPTIONS,, POST, PUT, DELETE, TRACE, and CONNECT.

GET 요청을 통해 Request-URI로 식별된 자원을 얻기 위해
POST는 Request-URI가 식별한 리소스 뒤에 새로운 데이터를 추가합니다
HEAD 요청을 통해 Request-URI로 식별된 리소스의 응답 메시지 헤더를 받으려 합니다
PUT 요청 서버는 자원을 저장하고 Request-URI를 식별자로 사용합니다
DELETE 요청 서버는 request-URI로 식별된 자원을 삭제합니다.
TRACE 요청 서버는 받은 요청 정보를 반환하며, 이는 주로 테스트나 진단에 사용됩니다
CONNECT는 향후 사용을 위해 예약되어 있습니다
OPTIONS는 서버의 성능이나 리소스와 관련된 옵션 및 요구사항을 조회하기 위해 요청합니다

User-Agent: 클라이언트의 브라우저 정보입니다.
Connection:close는 짧은 연결을 사용하며, Keep-Alive는 클라이언트가 지속적인 연결을 지원한다는 의미입니다.
날짜: 메시지가 생성된 현재 시간.
Accept-Language: 클라이언트가 지원하는 언어입니다.
캐시-제어: 클라이언트가 캐시를 지원하는지 여부. 노캐시는 클라이언트가 캐시를 지원하지 않는다는 의미로, 예를 들어 max-age=3600은 요청의 응답 결과가 유효한 기간을 사용자 에이전트에게 알려주고, 유효 기간 동안 사용자가 다시 접근이 필요할 때 서버에 접속하지 않고도 클라이언트에서 직접 로컬에서 추출할 수 있습니다.
리퍼러: 리퍼러는 요청이 어느 URL에서 오는지 서버에 알려주며, 이를 통해 사용자의 웹 접근 경로를 추적할 수 있습니다.
If-Modified-Since: 如果请求消息包含If-Modified-Since标题 域,GET方法的语法就变成“条件GET”,即“(conditional GET)”。 条件GET方法可以对指定资源进行判断,如果它在If-Modified-Since标题域中的指定日期后发生了更新,才启动传输,否则不传输。这种条件 GET允许被缓存的实体在不必经过多次请求或不必要的数据传输就能进行刷新,从而有助于降低网络负载。
Last-Modified: Sun, 03 Dec 2008 23:52:56 GMT
ETag: “1cbf3-dfd-3a2adcd8″
    일반적으로 파일 다운로드에서 응답 콘텐츠의 마지막 수정 시간을 식별하거나 콘텐츠가 더 검증된 상태를 식별하는 데 사용되며, 다음 사용자 에이전트가 필요할 때 서비스는 먼저 이 두 값이 서버의 값과 동일한지 판단하며, 동일한 값이 콘텐츠를 반환할 필요는 없습니다.
만료: 요청의 응답 결과가 만료되는 시점과 만료 전에 에이전트가 캐시에서 이전 응답 결과를 직접 반환할 수 있습니다.
호스트: 요청 자원의 호스트와 포트 번호를 지정합니다. HTTP/1.1 요청은 호스트를 지정해야 하며, 그렇지 않으면 서버가 400 상태 코드를 반환합니다.


http 응답:
예시는 다음과 같습니다:
HTTP/1.1 200 OK
Date: Mon, 04 May 2015 04:47:13 GMT
Server: Apache
Cache-Control: max-age=0
Expires: Mon, 04 May 2015 04:47:13 GMT
Vary: Accept-Encoding,User-Agent
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html;charset=utf-8
X-Pad: avoid browser bug


상태 라인에는 HTTP 프로토콜 버전 번호, 상태 코드, 상태 코드의 텍스트 설명이 포함됩니다. 예를 들어: HTTP/1.1 200 OK
상태 코드는 세 자리 숫자로 구성되며, 상태 코드는 대략 5가지 의미를 가집니다:
1. 1xx. 정보 제출, 요청 접수, 처리 진행.
2. 2xx. 성공. 200건의 요청이 성공했으며; 206 브레이크포인트는 계속되었다.
3. 3xx. 방향을 바꿔. 일반적으로 새 주소로 바로 이동하세요.
4. 4xx. 클라이언트 오류입니다. 404 파일은 존재하지 않습니다
5. 5xx. 서버 오류. 내부 오류는 500개입니다.

Set-Cookie: 서버가 클라이언트 측 쿠키를 설정합니다. 설정 형식은 name=value이며, 여러 매개변수를 설정할 때는 중간 매개변수를 세미콜론으로 구분합니다. Set-Cookie는 여러 매개변수를 사용합니다: PATH는 유효한 경로를 설정하고, DOMAIN은 쿠키가 효력을 발휘하는 도메인 이름을 설정하며, Expire는 쿠키의 유효 기간을 설정하고, 0은 브라우저가 종료되면 만료됨을 의미합니다.
locatio{filter}n: 이 매개변수는 서버가 3xx 리디렉션을 반환할 때 리디렉션을 구현합니다. 이 프로토콜은 광고 링크의 점프에 사용됩니다.
Content-Length: 부속물(데이터 엔터티)의 길이입니다.




이전의:Linux/Centos에서 .net 코어 콘솔 프로그램을 실행하세요 [소스 코드]
다음:시간 형식 hh:mm:ss와 HH:mm:ss의 차이점
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com