프론트엔드 엔지니어들이 가장 많이 다루는 것은 브라우저입니다. 그 중 HTTP 프로토콜은 우리가 무시하는 경우가 많습니다. 리소스 캐싱, CDN 로딩, 페이지 성능 최적화 등은 모두 HTTP 프로토콜에 대한 이해와 불가분의 관계입니다.
HTTP는 Hypertext Transfer Protocol이라고도 하며, 전체 이름은 Hyper Transfer Protocol입니다. 처음에는 HTTP가 HTML 파일만 전송할 수 있었지만 이제는 텍스트, 이미지, 비디오 및 다양한 스트리밍 파일을 전송할 수 있습니다.
HTTP는 상태 비저장입니다. 동일한 클라이언트가 HTTP 서버에 대해 여러 요청을 연속적으로 시작합니다. HTTP는 해당 요청이 동일한 클라이언트에서 온 것인지 알 수 없습니다.
HTTP 메시지 구조: 구체적인 메시지 구조를 보려면 패킷 캡처 도구를 사용해야 하므로 여기서는 구체적인 예 없이 간략한 소개만 하겠습니다. 요청과 응답의 메시지 구조는 기본적으로 동일합니다.
헤더: 요청/응답 줄과 요청/응답 헤더로 구분됩니다.
요청/응답 줄: 요청 방법(GET/POST), 리소스 경로 및 http 프로토콜 버전 번호가 포함됩니다.
요청/응답 헤더: 다양한 요청 헤더가 있습니다.
Body: 응답 본문, 일반적으로 HTML 파일입니다. get 요청인 경우 응답 본문이 없습니다.
HTTP 요청 방법:
GET Request-URI로 식별되는 리소스를 얻기 위한 요청
POST Request-URI로 식별되는 리소스 뒤에 새 데이터 추가
HEAD Request-URI로 식별되는 리소스의 응답 메시지 헤더를 얻기 위한 요청
PUT 서버에 리소스 저장을 요청하고 Request-URI를 식별자로 사용합니다.
DELETE 서버에 Request-URI로 식별된 리소스를 삭제하도록 요청합니다.
TRACE 수신된 요청 정보를 서버에 다시 보내도록 요청합니다. 주로 테스트 또는 진단에 사용됩니다.
CONNECT 향후 사용을 위해 예약됨
OPTIONS 서버 성능을 쿼리하거나 리소스와 관련된 옵션 및 요구 사항을 쿼리하는 요청
우리에게 일반적으로 사용되는 것은 GET 및 POST입니다. 다시 한번 말씀드리지만 양식을 제출할 필요가 없으며 게시물과 비교하는 데 보안 문제도 없습니다.
HTTP 상태 코드:
1XX 프롬프트 메시지 - 요청이 성공적으로 수신되었으며 계속 처리되고 있음을 나타냅니다.
2XX 성공 - 요청이 성공적으로 수신되고 이해되었으며 수락되었음을 나타냅니다.
3XX 리디렉션 - 요청을 완료하려면 추가 처리를 수행해야 합니다.
4XX 클라이언트 오류 - 요청에 구문 오류가 있거나 요청을 구현할 수 없습니다.
5XX 서버 측 오류 - 서버가 법적 요청을 구현하지 못했습니다. 여러 가지 상태 코드가 있으므로 직접 알아야 할 몇 가지가 있다고 생각합니다.
HTTP 통신 프로세스: URL에 따라 DNS 쿼리, 서버 찾기, TCP 연결 설정, 요청 보내기 및 서버 응답.
HTTP의 경우 기본은 HTTP가 Stateless라는 점, HTTP 메시지 구조, 기본 요청 방법, 기본 상태 코드를 아는 것이라고 생각합니다.
HTTP 프로토콜에 대해 아직 배울 것이 많이 있습니다. 이는 알아야 할 기본 사항일 뿐입니다.
코딩 개인 노트 공개 계정 팔로우를 환영합니다.
HTTP는 Hypertext Transfer Protocol이라고도 하며, 전체 이름은 Hyper Transfer Protocol입니다. 처음에는 HTTP가 HTML 파일만 전송할 수 있었지만 이제는 텍스트, 이미지, 비디오 및 다양한 스트리밍 파일을 전송할 수 있습니다.
HTTP는 상태 비저장입니다. 동일한 클라이언트가 HTTP 서버에 대해 여러 요청을 연속적으로 시작합니다. HTTP는 해당 요청이 동일한 클라이언트에서 온 것인지 알 수 없습니다.
HTTP 메시지 구조: 특정 메시지 구조에 따라 패킷 캡처 도구를 사용해야 하므로 여기서는 구체적인 예 없이 간략한 소개만 하겠습니다. 요청과 응답의 메시지 구조는 기본적으로 동일합니다.
헤더: 요청/응답 줄과 요청/응답 헤더로 구분됩니다.
요청/응답 줄: 요청 방법(GET/POST), 리소스 경로 및 http 프로토콜 버전 번호가 포함됩니다.
요청/응답 헤더: 다양한 요청 헤더가 있습니다.
Body: 응답 본문, 일반적으로 HTML 파일입니다. get 요청인 경우 응답 본문이 없습니다.
HTTP 요청 방법:
GET Request-URI로 식별되는 자원을 얻기 위한 요청
POST Request-URI로 식별되는 자원 뒤에 새로운 데이터를 추가
HEAD Request-URI로 식별되는 자원의 응답 메시지 헤더를 얻기 위해 요청
PUT 서버에 데이터를 저장하도록 요청
DELETE 서버에 Request-URI로 식별된 리소스를 삭제하도록 요청
TRACE 주로 테스트 또는 진단에 사용되는 수신된 요청 정보를 서버에 다시 보내도록 요청
CONNECT 향후 사용을 위해 예약됨
OPTIONS 서버의 성능을 쿼리하는 요청 또는 리소스 관련 옵션 및 요구 사항을 쿼리하는 요청
우리에게 일반적으로 사용되는 것은 GET 및 POST입니다. 다시 한번 말씀드리지만 양식을 제출할 필요가 없으며 게시물과 비교하는 데 보안 문제도 없습니다.
HTTP 상태 코드:
1XX 프롬프트 메시지 - 요청이 성공적으로 수신되었으며 계속 처리되고 있음을 나타냅니다.
2XX 성공 - 요청이 성공적으로 수신되고 이해되었으며 수락되었음을 나타냅니다.
3XX 리디렉션 - 요청을 완료하려면 추가 처리를 수행해야 합니다.
4XX 클라이언트 오류 - 요청에 구문 오류가 있거나 요청을 구현할 수 없습니다.
5XX 서버 측 오류 - 서버가 법적 요청을 구현하지 못했습니다. 여러 가지 상태 코드가 있으므로 직접 알아두어야 할 사항이 있다고 생각합니다.
HTTP 통신 프로세스: URL에 따라 DNS 쿼리, 서버 찾기, TCP 연결 설정, 요청 보내기 및 서버 응답.
HTTP의 경우 기본은 HTTP가 Stateless라는 점, HTTP 메시지 구조, 기본 요청 방법, 기본 상태 코드를 아는 것이라고 생각합니다.
HTTP 프로토콜에 대해 아직 배울 것이 많이 있습니다. 이는 알아야 할 기본 사항일 뿐입니다.
【추천 강좌:
HTTP 동영상 강좌위 내용은 프런트엔드 개발과 밀접하게 관련된 HTTP 프로토콜 지식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!