当前位置 博文首页 > 谁吃薄荷糖:【 ?斗艳争妍の网络协议姐妹花????】http协议 VS we
http(hypertext transfer protocol),“超文本传输协议”。
包含有超链接和各种多媒体元素标记的文本。常见的超文本格式html(超文本标记语言)。
定义浏览器如何向web服务器发送请求,web服务器如何向浏览器进行响应。简言之,就是client端与server端进行数据传输的一种规则。
用户点击http://www.baidu.com/index.html后的流程:
简言之:建链->请求->响应->断开
http协议本身不会对发送过的请求和响应的通讯状态进行持久化处理。
同一客户端(浏览器)第二次访问同一个web服务器时,服务端无法知道这个客户端是否曾经访问过。
无状态性保证了http协议的简单性,从而能够快速处理大量的事务,提高了效率。
通常使用cookie或附带其他参数(token)用来区分来源。
每个tcp连接只能发送一个请求。发送数据完毕,该连接就关闭,如果还要请求其他资源,就必须再新建一个连接。非标Connection:keep-alive
请求报文和响应报文都是由以下4部分组成:
方法 | 含义 |
---|---|
GET | 请求读取 |
POST | 请求添加 |
PUT | 存储 |
DELETE | 删除 |
HEAD | 请求信息首部 |
TRACE | 用于测试,要求服务器回收到请求 |
CONNECTION | 用于代理服务器 |
OPTION | 查询特定选项 |
响应报文里的状态码:指明特定的请求是否被满足,如没有满足,给出原因。
状态码 | 含义 | 示例 |
---|---|---|
1xx | 通知信息 | 100:服务器正在处理客户端请求 |
2xx | 成功 | 200:请求成功 |
3xx | 重定向 | 301:重定向 |
4xx | 客户端错误 | 403:禁止的页面;404:未找到 |
5xx | 服务器错误 | 500:服务器内部错误 |
请求/响应模型:通信只能由客户端发起,服务端不能主动发送消息给客户端。
cs