目录
- HTTP 协议
- ...
1. HTTP 协议
1. 支持客户/服务器模式
2. 简单快速:客户向服务器请求服务时,只需传送请求方法和路径
3. 灵活:HTTP允许传输任意类型的数据对象
4. 无连接:限制每次连接只处理一个请求
5. 无状态:服务器对于事务处理没有记忆能力,服务器不知道客户端是什么状态
1. 请求方法:HTTP/1.1 定义的请求方法有8种:GET、POST、PUT、DELETE、PATCH、HEAD、
OPTIONS、TRACE,最常的两种GET和POST
GET:用于当客户端要从服务器中读取文档,且传递的参数和值存在于URL中,所以采用GET
方法请求的HTTP报文没有请求体
POST:POST方法将要传输的数据封装在报文的请求体中,并且对传输的数据大小没有限制,
所以可以传输大量的数据,并且因为数据封装在请求体中,没有直接暴露在URL中,
所以比较私密和安全
2. 请求URL:请求对应的URL地址,它和报文头的Host属性组成完整的请求URL
3. 报文头:报文头包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息
4. 报文体:将一个页面表单中的组件值通过 param1=value1 & param2=value2 的键值对形式编
码成一个格式化串,它承载多个请求参数的数据
1. 短连接:一次TCP连接完成一次HTTP请求/响应,完成后断开TCP连接,HTTP/1.0只支持短连接
2. 长连接:一次TCP连接能够完成多次HTTP请求/响应,完成一次HTTP请求/响应后允许不断开TCP连
接,之后的HTTP请求/响应就不再需要重新握手建立连接,长连接针对的是TCP连接,对于
HTTP一次会话只能完成一次HTTP请求/响应,HTTP/1.1之后支持长连接
3. 长连接的优缺点
优点:当网站中有大量静态资源时可以开启长连接,静态资源就可以通过一次TCP连接发送
缺点:当客户端请求一次时候不在请求,而服务器却开着长连接导致资源浪费
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。