Http请求即客户端发送给服务器的请求。
请求的内容格式如下所示:
请求行
请求头
空行
请求正文,也称请求体
请求行如果是GET /Example/ HTTP/1.1
GET :指的是请求方式。
/Example:指的是请求地址,也就是URL。
HTTP/1.1 :指的是协议及版本号。
HTTP协议中的响应的内容格式
响应行
响应头
空行
响应体
响应行的格式就是前面是协议名称然后是状态码然后再是描述
在HTTP/1.1协议中,定义了8中发送http请求的方法
GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT、PATCH
我们在网页请求中最常见的就是GET和POST
GET请求的描述
GET一般是获取服务器上的数据时发送的请求
GET请求的方式是通过url传递数据,效率高
请求的数据在URL上,不安全,如果我们通过GET请求去登录的话,用户名和密码会出现在地址栏中login.php?username=1234&password=1234
请求的参数中如果有中文或者空格的话应该进行url编码,不然服务器可能都不知道你请求的是什么
GET请求的结构能够被浏览器缓存
GET请求的时候没有请求体
POST请求的描述
POST一般是往服务器去提交数据,并获取服务器返回的结果,比如说我们登录和注册的时候就会发送POST请求还有我们评论的时候也会发送POST请求
POST请求是通过请求体来传输数据的,效率会低一点
请求的数据用户看不到,相对安全
POST请求不能被浏览器缓存
GET和POST的区别,
GET请求速度快
POST请求速度慢
POST请求相对于GET请求是安全的
一般来说我们都是用GET来获取数据,我们在像服务器传递少量数据的时候可以用GET,就比如说百度搜索的时候,不同的Web服务器都限制了GET发送的数据量
我们发送大量数据可以用POST,还有就是在登录注册涉及到隐私的信息的都可以用POST,
HEAD请求不获取响应体,只获取响应头,就比如说我们在下载的之前要获取文件的大小就可以用HEAD请求