HTTP协议请求(总结学习)
Posted haiyangboli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP协议请求(总结学习)相关的知识,希望对你有一定的参考价值。
1.HTTP协议是什么?
协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,HTTP(超文本传输协议)是互联网上用得最广泛的一种网络协议,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。
2.发送HTTP请求?
当你浏览器地址栏中输入URL,回车后就发起了HTTP请求
URL(统一资源定位符)也被称为网页地址,是互联网标准的地址
protocol :// hostname[:port] / path / [;parameters][?query]#fragment
协议://主机名[:端口号]/路径/[;参数][?查询]#信息片断
例如:http://www.xxser.com/post/httpxieyi.heml就是个标准的URL
3.HTTP请求和响应?
HTTP请求:包括三部分:请求行(请求方法)、请求头(消息报头)、请求体(请求正文)
HTTP响应:也包括三部分:响应行、响应头(消息报头)、响应体(响应正文、消息主题)
4.HTTP请求方法:
最常见的有GET和POST
HTTP的请求方式有GET、POST、opions、Put、Head、Delete、Trace、Connect
5.HTTP状态码
当客户端发送HTTP请求,服务端接受后会像客户端发送响应消息,其中响应的第一行中最重要的一点就是HTTP的状态码,内容如下:
HTTP/1.1 200 ok
这的状态码为200,在HTTP协议中表示请求成功,HTTP协议中状态码由三位数组成,第一位数定义了响应的类别,且只有以下五种响应:
(1) 1XX 提示信息 - 表示请求已被成功接收,继续处理,范围在100-101
(2) 2XX 成功 - 表示请求已被成功接收,理解,接受,范围在200-206
(3) 3XX 重定向 - 重定向状态码用于告诉浏览器客户端,它们访问的资源已被移动,并告诉客户端新的资源地址位置。这时,浏览器将重新对新资源发起请求,范围在300-305
(4) 4XX 客户端错误状态码 - 有时客户端发送一些服务器无法请求的东西,比如格式的错误 请求,或者最常见的请求一个不存在的URL。 范围在400-415
(5) 5XX 服务器端错误 - 有时候客户端发送了一条有效的请求,但web服务器自身出错了,可能是web服务器运行出错了,或者说网站挂掉了,5XX是用来描述服务器内部错误的,范围在500-505
常见得状态码如下:
200:客户端请求成功 302:重定向
404:请求资源不存在 400:客户端请求有语法错误,不能被服务器所理解
401:请求未经授权 403:服务器收到请求,但拒绝提供服务
500:服务器内部错误,是最常见的状态 503:服务器当前不能处理客户端的请求,一段时间后可能恢复正常
6.GET和POST区别(官方答案)
get参数通过url传递,post放在request body中
get请求在url中传递的参数是有长度限制的,而post没有
get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。
get请求只能进行url编码,而post支持多种编码方式
get请求会浏览器主动cache,而post支持多种编码方式
get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留
GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同
GET产生一个TCP数据包;POST产生两个TCP数据包
以上是关于HTTP协议请求(总结学习)的主要内容,如果未能解决你的问题,请参考以下文章
javaweb学习总结十九(http协议概述以及http请求信息分析)
web前端--html/css/javaScript/jQuery学习总结