과 포스트 사이의 차이에하는 요청을 요청 패킷을 얻을

포스트 사이의 차이에 대한 것은 요청을 요청 패킷을 얻을

많은 그 서버에서 데이터를 얻을 얻을 수 있습니다 관성의 일종으로 생각 웹 지식을 학습하는 경향이 백성 포스트가 서버에 데이터를 제출하는 것입니다. 우리가 배울 때이 생각하는 이유는, 아마도 객체 지향 프로그래밍 클래스는 내부 HTTP 프로토콜의 개념이 개념의 비유를 넣어 쉽게 GET () 메소드와 설정 () 메소드를 배웠습니다. 심지어 일부 업무 경험의 프로그래머 나에게 사고의 종류를 생산 가능성이 높다.

HTTP 프로토콜은 네트워크 프로토콜은 컴퓨터 네트워크 응용 프로그램 계층에서 실행됩니다. 그것은 두 가지 절차, 서버, 클라이언트에 의해 구현된다. 웹 사이트에 액세스 할 수 있으려면 등등 모든 관련 이미지, 문서, 프로그램에 대한 데이터를 저장하고 서버를 사용해야합니다. 서버에서 THHP 서버 프로그램은 그래서 바람둥이, nginx를, 그리고 같은 기계의 상단에 실행 될 수 있습니다. 우리는 브라우저가 고객의 끝 사용, 브라우저의 주소 표시 줄에 우리가 HTTP 프로토콜 웹 서버의 IP 주소 또는 도메인 이름, 포트 번호 및 경로를 지원합니다, 당신은 페이지 위의 웹 서버에 액세스 할 수 있습니다.

웹 서버와 클라이언트 사이의 방법 통신의 HTTP 프로토콜 제약. 패킷 통신을 통해 전송. 클라이언트는 서버는 클라이언트의 요청에 응답 메시지를 보낼 수에 따라 요청 메시지를 수신, 서버에 요청 메시지를 전송한다. 이 문서에서는 차이 포스트 사이의 연결을 설명하고 방법을 얻을 초점을 맞추고 있습니다.

첫째, 포스트 사이의 차이에 도착

많은 사람들이 먼저 생각하는
가장 큰 차이는보다 안전한 전송 메커니즘의 다른 매개 변수, 더 포스트 용량이다 1.
2, URL 주소에 매개 변수를 전달하는 방법에서 얻을 길이 제한이 있습니다. 포스트 방법에 따라 매개 변수가 몸 HTTP 전송에 배치됩니다 전달합니다.
보안 게시물 높은 것으로 3은 얻을 및 양식 제출 후 요청, 디스플레이 제출 얻을 수있다, 포스트 커밋 암시입니다.

그러나 다른 차이 장소가있다

차이도 있습니다, 단순히 말 :

POST가 두 TCP 패킷을 생성하는 단계; GET는 TCP 패킷을 생성한다.

긴 말했다 :

GET 요청의 경우, 브라우저는 HTTP 헤더와 데이터를 함께 서버 응답 200 (새 데이터)를 전송합니다;

POST를 들어, 브라우저가 1 헤더를 송신한다 (100)은 계속하여 서버의 응답은, 브라우저는 서버 (200) OK (리턴 데이터)에 응답하여, 데이터를 송신한다.

즉, POST는 두 번 첫 여행을 실행하는 서버로 이동 이봐, 내가 배달 다음 선적을 위해, 당신은 열을 기다리고 싶지 ", 인사 할 동안 만 물품을 전달하기 위해 자동차 여행을 둘 필요가 GET 문은, 저를 인사 "다음 다시 과거로 물품을 보낼 수 있습니다.

POST는 두 단계가 필요하기 때문에, 시간이 조금 더 소비하기 위해서는 POST를 GET보다 더 효과적인 것 같다. 그래서 팀은 사이트의 성능을 최적화하기 위해 GET의 POST를 교체 권장하고있다. 하지만이 구덩이입니다!주의 할 필요가 증가했다. 이유는 무엇입니까?

세 가지 이유가 있습니다 :

  1. GET과 POST는 자신의 의미를 가지고, 단지 혼합되지.

  2. 연구에 따르면, 네트워크 환경이 좋은에서, 시간과 패킷의 시간 차이를 보내고 기본적으로 무시 두 패킷을 보낼 수 있습니다. 그리고 열악한 네트워크 환경의 경우, 두 개의 패킷 무결성 검증을 통해 TCP 패킷 큰 장점이있다.

  3. 두 개의 패킷을 전송합니다 모든 브라우저는 파이어 폭스는 POST 동안 한 번만 전송됩니다.

다음 말하고 요청 메시지에서

첫째, 요청 메시지는 다음과 같습니다

POST /path/of/resource HTTP/1.1 
Host: IP:PORT 
Authorization: Basic YXBpdXNlcjpmbnN0MTIzNA== 
User-Agent: curl/7.59.0 
Accept: / 
Content-Length: 31 

우리가 본 첫 번째 줄은 요청 라인 메시지입니다. POST HTTP 요청이 표현은 포스트 방법이다. 그런 다음 경로, http 프로토콜이다. 다음과 같은 방법을 요청할 수 있습니다 : 게시물을 얻을 머리를 삭제했습니다. 매개 변수가 몸 게시물에 저장되어, 오히려 방법은하지 않습니다 얻을. 당신은 GET 요청 매개 변수를 전달 보낼 경우, 우리의 인수는 URL에 반영됩니다.
GET 요청 컬을 보내 :

컬 -v -X GET -i " 에 http : // IP : 포트 / 경로 AAA = 1 & BBB = 44D"

우리의 인수는 요청 메시지 본문의 존재가 될 것입니다 :

POST /path HTTP/1.1 
Host: 10.167.157.49:5001 
Authorization: Basic YXBpdXNlcjpmbnN0MTIzNA== 
User-Agent: curl/7.59.0 
Accept: / 
Content-Length: 31 
Content-Type: application/x-www-form-urlencoded

upload completely sent off: 31 out of 31 bytes
HTTP 1.0, assume close after body

우리는 몸을 업로드 위의 요청 메시지에서 볼 수 있습니다.
위, 우리는 웹 페이지의 HTTP 요청, 게시물을 참조하여 서버에 양식을 제출할 수있는 방법을 얻을 수 있습니다. 그러나 우리는 일반적으로 단지 URL에 사용자의 입력의 노출을 방지하기 위해, 형태의 데이터의 개인 정보를 보호하기 위해, 포스트 방법을 참조하십시오. 사실, 또한 양식을 제출할 수 get 메소드하지만, 입력 양식은의 URL에 반영됩니다.

추천

출처blog.csdn.net/weixin_43931047/article/details/90417166