协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器
代理服务器示意图
代理服务器就是网络信息的中转站,有什么功能呢?
1. 提高访问速度, 大多数的代理服务器都有缓存功能。
2. 突破限制, 也就是FQ了
3. 隐藏身份。
http协议是无状态的,同一个客户端的这次请求和上次请求是没有对应关系,对http服务器来说,它并不知道这两个请求来自同一个客户端。 为了解决这个问题, Web程序引入了Cookie机制来维护状态.
打开一个网页需要浏览器发送很多次Request:
①当你在浏览器中输入url地址的时候,浏览器发送一次请求获取目标服务器的html,服务器将Reponse返回给浏览器
②浏览器分析Response中的 HTML,发现其中引用了很多其他文件,比如图片,CSS文件,JS文件。
③浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。
④等所有的文件都下载成功后。 网页就被显示出来了。
想要了解request的结构图请看:
Request 消息分为3部分,第一部分叫Request line, 第二部分叫Request header, 第三部分是body. header和body之间有个空行, 结构如下图
第一行中的Method表示请求方法,比如"POST","GET", Path-to-resoure表示请求的资源, Http/version-number 表示HTTP协议的版本号
当使用的是"GET" 方法的时候, body是为空的
想要打开看看怎么回事吗?请看:
想要看看reponse的结构示意图:
和Request消息的结构基本一样。 同样也分为三部分,第一部分叫Response line, 第二部分叫Response header,第三部分是body. header和body之间也有个空行, 结构如下图
HTTP/version-number表示HTTP协议的版本号
Response 消息中的第一行叫做状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。
状态码用来告诉HTTP客户端,HTTP服务器是否产生了预期的Response.
HTTP/1.1中定义了5类状态码, 状态码由三位数字组成,第一个数字定义了响应的类别
1XX 提示信息 - 表示请求已被成功接收,继续处理
2XX 成功 - 表示请求已被成功接收,理解,接受
3XX 重定向 - 要完成请求必须进行更进一步的处理
4XX 客户端错误 - 请求有语法错误或请求无法实现
5XX 服务器端错误 - 服务器未能实现合法的请求
想要看看reponse的结构图吗?请往下看:
get方式和post方式的区别:
1、GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的Body中.
2、GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制.
3、GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码.
相关推荐
深入了解http协议.具体介绍了相关的协议
详细解读了HTTP协议,对于网络中常用的HTTP协议进行解读,让读者可以轻松的了解http协议,对于http协议了解以后,还解读一些安全上的知识
学习了解http协议相细字段,分析http协议。
HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一...
对于了解http协议很有帮助,对于很多开发者来说对于http协议很模糊,其实也不是很高深的东西了
1、熟悉Web系统的工作原理,掌握HTTP协议的工作机制; 2、利用Telnet工具或其他工具提供TCP端接,在TCP连接的基础上,手动实施基于HTTP协议的Web程序访问过程; 3、理解邮件服务的工作原理; 4、了解POP3协议及接收...
对HTTP协议详细的讲解,看了希望大家对HTTP有一定的了解
清晰的HTTP协议规范,要详细了解的人应该阅读几遍。
HTTP网络协议的工作原理,可以增进对网络协议的了解。
深入浅出了解HTTP协议
这份资料非常全面且详细,从 HTTP协议诞生背景到 HTTP协议结构,再到其应用,几乎覆盖了HTTP协议 的方方面面,非常适合初学者入门! 资料也按目录进行编排,每一章下面都有更具体的内容: HTTP初探 1. HTTP版本 自...
Http上传 可以上传所有格式的代码。从开始了解到编写 花费了半天时间。为此需要的分很多。但是很实用
非常透彻的了解http协议,还有实验进行验证,我觉得非常不错,推荐给大家
1.这个是一个win32 WinSock api 实现http协议.里面的类CSocketHttpImplement是主要的模块(如果要用就这个类移...4.如果看不懂代码的,可以去了解哈http协议哈!或者直接用winnet去写下载.用WinSock api要复杂一些哈!
让你了解http协议的秘密
包括如下章节,不可多得的学习资料...3. 深入了解篇 22 3.1 Cookie和Session 22 3.2 缓存的实现 25 3.3 断点续传和多线程下载的实现 26 3.4 https通信过程 27 3.5 http代理 29 3.6 虚拟主机的实现 30 附录:参考资料 31
了解、学习HTTP协议的最好的文档,中译版的RFC2616
本文描述http协议基本工作原理,是web网站开发人员了解http协议指导丛书