http协议请求与请求报文,响应与响应报文

Posted why210

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http协议请求与请求报文,响应与响应报文相关的知识,希望对你有一定的参考价值。

http 协议

HTTP协议,即超文本传输协议(Hypertext transfer protocol)。是一种详细规定了浏览器和服务器之间互相通信的规则

HTTP协议规定了请求响应 的标准

请求与请求报文

get请求的请求报文详解

//--------------------------请求行--------------------------------
// GET 请求方式
// /day02/01.php?username=pp&password=123456   请求路径+参数(注意点)
// HTTP/1.1 HTTP的版本号
GET /day02/01.php?username=pp&password=123456 HTTP/1.1
?
//--------------------------请求头--------------------------------
Host: www.study.com
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/58.0.3029.96 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,`*/*`;q=0.8
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
?
//----------------------------请求体-------------------------------------
//get请求没有请求体,但是参数会拼接到请求行中

 

POST请求的请求报文


//-----------------------请求行---------------------------------------------
POST /day02/01.php HTTP/1.1
?
//-----------------------请求头--------------------------------------------
Host: www.study.com
Connection: keep-alive
//传递的参数的长度。
Content-Length: 29
Cache-Control: max-age=0
Origin: http://www.study.com
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36
//内容类型:表单数据,如果是post请求,必须指定这个属性。
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,`*/*`;q=0.8
Referer: http://www.study.com/day02/01-login.html
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
?
//------------------------请求体------------------------------------------
username=pp&password=123456

GET请求与POST请求的对比

  • GET请求没有请求体,因为GET请求的参数拼接到地址栏中了

  • POST请求有请求体,就是传递的参数

  • POST请求需要指定content-type属性。

 

响应与响应报文


//---------------------状态行(响应行)-------------------------------
//HTTP/1.1 HTTP版本
//200 响应的状态
//200表示成功
//304表示读缓存
//404表示找不到资源
//500表示服务端错误
HTTP/1.1 200 OK
?
//----------------------响应头-----------------------------------------------
Date: Thu, 22 Jun 2017 16:51:22 GMT
Server: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
X-Powered-By: PHP/5.4.45
Content-Length: 18
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
//内容类型,告诉浏览器该如何解析响应结果
Content-Type: text/html;charset=utf-8
//-----------------------响应体------------------------------------------------
hello world

 

 


























































以上是关于http协议请求与请求报文,响应与响应报文的主要内容,如果未能解决你的问题,请参考以下文章

http 请求的请求与响应的报文分析

HTTP响应报文与工作原理详解

深入Nginx之《HTTP请求报文与HTTP响应报文》

浅析HTTP协议的请求报文和响应报文

http协议介绍及get与post请求响应状态码

HTTP请求报文和响应报文