차이점: 1. 게시 요청이 더 안전합니다. 게시 요청은 URL의 일부로 사용되지 않으며, 캐시되지 않으며, 가져오기 요청이 정적 리소스인 경우 서버 로그 및 브라우저 탐색 기록에 저장되지 않습니다. 데이터는 캐시되지 않습니다. 2. post 요청으로 전송된 데이터는 더 크며 get 요청에는 URL 길이 제한이 있습니다. 3. 게시 요청은 더 많은 데이터 유형을 보낼 수 있는 반면, 가져오기 요청은 ASCII 문자만 보낼 수 있습니다. 4. 매개변수 전송 방법이 다릅니다. 5. Get은 하나의 TCP 패킷을 생성하고 post는 두 개를 생성합니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, Dell G3 컴퓨터.
get 요청: 일반적으로 검색 정렬 및 필터링과 같은 작업에 사용되는 데이터를 얻는 데 사용되는 지정된 리소스에서 데이터를 요청합니다.
포스트 요청: 처리할 데이터를 지정된 리소스에 제출합니다. 서버에 데이터를 보내는 데 사용되며 일반적으로 데이터를 수정하고 쓰는 데 사용됩니다.
Get 요청과 Post 요청은 기본적으로 TCP 링크이므로 차이가 없습니다. 다만, HTTP 규정 및 브라우저/서버 제한으로 인해 신청 절차에 다소 차이가 있습니다.
게시 요청과 요청 받기의 차이점
(1) 게시 요청이 더 안전합니다(URL의 일부로 사용되지 않으며, 캐시되지 않으며, 서버 로그 및 브라우저 검색 기록에 저장되지 않습니다. get request 정적 리소스인 경우 캐시됩니다. 데이터인 경우 캐시되지 않습니다.)
(2) 게시 요청으로 전송되는 데이터가 더 큽니다(get 요청에는 URL 길이 제한이 있으므로 http는 프로토콜 자체는 제한하지 않으며 요청 길이 제한은 브라우저에 의해 결정됨) 웹 서버로 결정 및 설정)
(3) Post 요청은 더 많은 데이터 유형을 보낼 수 있습니다(get 요청은 ASCII 문자만 보낼 수 있음)
(4) 매개변수 전달 방법이 다릅니다(get 요청 매개변수는 URL을 통해 전달되고 post 요청은 요청 본문에 전달됨)
(5) get 요청은 하나의 TCP 데이터 패킷을 생성합니다. post 요청은 두 개의 TCP 데이터 패킷을 생성합니다. get 요청, 브라우저는 http 헤더와 데이터를 함께 보내고 서버는 데이터를 반환하기 위해 200으로 응답합니다. Post 요청은 브라우저가 먼저 헤더를 보내고 서버는 100 continue로 응답한 다음 브라우저가 데이터를 보냅니다. 서버는 200 반환 데이터로 응답합니다)
참고: POST를 보낼 때 Expect 헤더가 없으며 서버는 당연히 100 continue를 보내지 않습니다.
포스트 요청 프로세스:
(1) 브라우저가 TCP 연결을 요청합니다(첫 번째 핸드셰이크)
(2) 서버가 TCP 연결에 동의합니다(두 번째 핸드셰이크)
(3) 브라우저 확인 및 전송 post 요청 헤더(세 번째 핸드셰이크, 이 메시지는 상대적으로 작으므로 http는 이때 첫 번째 데이터를 보냅니다)
(4) 서버는 100 Continue 응답을 반환합니다.
(5) 브라우저는 데이터를 보냅니다
( 6) 서버는 200 OK 응답을 반환합니다.
요청 받기 프로세스:
(1) 브라우저는 TCP 연결을 요청합니다(첫 번째 핸드셰이크)
(2) 서버는 TCP 연결에 동의합니다( 아니요. 두 번째 핸드셰이크)
(3) 브라우저는 get 요청 헤더와 데이터를 확인하고 보냅니다. (세 번째 핸드셰이크, 이 메시지는 상대적으로 작기 때문에 이때 http가 첫 번째 데이터를 보냅니다.)
(4) 서버 200 OK 응답이 돌아옵니다
네트워크 환경이 좋으면 한 번 패키지를 보낼 때와 두 번 보낼 때의 시간 차이는 기본적으로 무시할 수 있습니다. 네트워크 환경이 열악한 경우 두 개의 패킷을 사용하는 TCP는 데이터 패킷의 무결성을 확인하는 데 큰 장점이 있습니다.
더 많은 관련 지식은 FAQ 칼럼을 방문해주세요!
위 내용은 게시 요청과 요청 받기의 차이점은 무엇인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!