HTTP概念:

HTTP是一个基于TCP/IP通信协议来传递数据,包括html文件、图像、结果等,即是一个客户端和服务器端请求和应答的标准

1.http无连接:限制每次连接只处理一个请求,服务端完成客户端的请求后,即断开连接。(传输速度快,减少不必要的连接,但也意味着每一次访问都要建立一次连接,效率降低)

2.http无状态:对于事务处理没有记忆能力。每一次请求都是独立的,不记录客户端任何行为。(优点解放服务器,但可能每次请求会传输大量重复的内容信息)

3.客户端/服务端模型:客户端支持web浏览器或其他任何客户端,服务器通常是apache或者iis等

4.简单快速

5.灵活:可以传输任何类型的数据

以下图表展示了HTTP协议通信流程:

HTTP 消息结构

HTTP是基于客户端/服务端(C/S)的架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议。

一个HTTP"客户端"是一个应用程序(Web浏览器或其他任何客户端),通过连接到服务器达到向服务器发送一个或多个HTTP的请求的目的。

一个HTTP"服务器"同样也是一个应用程序(通常是一个Web服务,如Apache Web服务器或IIS服务器等),通过接收客户端的请求并向客户端发送HTTP响应数据。

HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。

一旦建立连接后,数据消息就通过类似Internet邮件所使用的格式[RFC5322]和多用途Internet邮件扩展(MIME)[RFC2045]来传送

客户端请求消息

客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成

下图给出了请求报文的一般格式

服务器响应消息

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文

天子骄龙

最新文章

  1. SDUT 1400 马的走法(回溯法)
  2. Spring 整合 Hibernate
  3. sql字符串插入函数STUFF
  4. java生成随机字符串uuid
  5. R提高篇(三): 数据管理一
  6. mysql 锁表查询及其处理
  7. 后台处理excel下载输出流
  8. Codeforce B. Polycarp and Letters
  9. [UOJ]#33. 【UR #2】树上GCD
  10. [Swift]LeetCode423. 从英文中重建数字 | Reconstruct Original Digits from English
  11. python中的pip
  12. java类加载及类初始化
  13. 记一次gitlab-ce数据恢复过程
  14. AX2012 ERP 维度相关表数据关系图
  15. 论文阅读笔记一:Tutorial on Gabor Filters
  16. HDU 2072 - 单词数 - [(有点小坑的)字典树模板题]
  17. Django -- settings 详解
  18. 如何进入docker容器
  19. Elastalert 监控
  20. Autofac Named命名和Key Service服务

热门文章

  1. Day02:正则表达式 / Object / 包装类
  2. django设置mysql为数据库笔记
  3. 【VS开发】【智能语音处理】解读男女声音的区别:亮度,糙度
  4. SpringBoot初步介绍及安装
  5. centos7成功部署OpenLDAP
  6. Dubbo基础、高级讲解
  7. 使用注解方式搭建SpringMVC
  8. HDU 1257 最少拦截系统 最长递增子序列
  9. centos中安装python3.7
  10. Maven build 命令介绍(转)