HTTP协议强化理解
一:第一波
1. 是什么?
答:是一种定义超文本在网络中如何进行传输的协议! 所有的WWW上的文件都必须遵循!
是基于TCP/IP。
传输路径: 客户端<——>服务端 (全双工)
2. 特点?
答: 1.无连接:每次连接只处理一个请求。 连接——请求——应答——关闭
2.媒体独立:只要知道如何处理数据内容,任何类型的数据都可以通过http发送。
3.无状态: 对于事务处理没有记忆(每一次的请求响应都是孤立的)。
3. 没图说个J8?
二:第二波
1.URI: 统一资源标识符(如何定位网络上的资源呢?)
网络号 + 主机号: 定位资源所在的主机
资源路径: 定位资源在主机上的位置
2.http消息结构
a:客户端请求消息
b:服务器响应消息
3.http请求方法
请求方法: 定义如何请求? 告诉浏览器请求方法,去向浏览器请求。 说到底还是对象的沟通!
请求方法:来自一个url的默认请求都是get,或者未指定就是get(表单)。
4.请求和相应参数配置:
0.content-type:告诉浏览器以什么编码? 什么文件形式或处理服务器返回的数据!
1.Allow:服务器支持的请求方法。
2.content-encoding:文档的编码方法
3.content-length:表示内容长度。只有当浏览器使用持久HTTP连接时才需要这个数据。
4.content-type:表示后面的文档属于什么MIME类型。
5.expires:到期时间。
6.last-modified:文档的最后改动时间。 条件get,改动时间迟于指定的时间才会有响应。
7.location:客户应当到哪里去提取文档。
8.refresh:设置浏览器多少时间后刷新文档。
第三:第三波(科普)
1 一旦建立连接后,数据消息就通过类似Internet邮件所使用的格式[RFC5322]和多用途Internet邮件扩展(MIME)[RFC2045]来传送。
a:RFC5322
b:MIME
c: 回车和换行
第四: web世界的理解
答: 对于整个internet来说,web世界的构建是实现信息资源的共享,打破信息孤岛。 让所有的计算机连接起来,让保存在不同机器上的资源
可以通过网络来实现共享。
文件上传 :就是从本地上传到服务器指定的目录下(web目录下或指定的硬盘目录)
文件下载: 反之,就是从web服务器(理解为一台或多台计算机)获取指定的文件到本地指定的目录。
文件删除: 通过代码操控远程服务器上的文件。
结尾: 参考资料
1. 菜鸟教程! (相当不错哦)
HTTP协议强化理解的更多相关文章
- HTTPS强制安全策略-HSTS协议阅读理解
https://developer.mozilla.org/en-US/docs/Web/Security/HTTP_strict_transport_security [阅读理解式翻译,非严格遵循原 ...
- java网络编程+通讯协议的理解
参考: http://blog.csdn.net/sunyc1990/article/details/50773014 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很 ...
- Http协议与TCP协议简单理解(转)
在C#编写代码,很多时候会遇到Http协议或者TCP协议,这里做一个简单的理解.TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性.Http协议是建立在TCP协议基础之上 ...
- Http协议与TCP协议简单理解
TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性.Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求.Http会通 ...
- TeamTalk自定义IM协议的理解
一.TeamTalk自定义IM协议 TeamTalk自定义IM协议是一种基于protocol buffer的消息传递协议,protocol buffer可以自定义消息格式.protocol buffe ...
- Http协议的理解
作者技术有限,这篇博文都是结合网上的文章和自己的理解而写的,若存在错误,请无私指出,十分感谢! 协议,就是一种标准,即大家都要遵守的标准. 举个简单的例子:在中国,几乎人人都会讲普通话,不同地区的人有 ...
- TCP/UDP协议、理解三次握手四次挥手、Socket
一.什么是socket? 中文名叫套接字,是对底层的 TCP IP UDP 等网络协议进行封装,使得上层的应用程序开发者,不用直接接触这对复杂,丑陋的协议. 在程序员的言论,他就是一个封装好的模块,要 ...
- 关于GPL协议的理解(开源与商用、免费与收费的理解)
编者:请特别注意看暗红色粗体标注的那几句话,总结下来有下面几点: 如果你用了我的 GPL软件,那么你的软件也必须要开源,否则就不能使用我的软件,你是否把你的软件商用和我没关系 Oracle 卖的不是软 ...
- 从敲入 URL 到浏览器渲染完成、对HTTP协议的理解
1. 大致过程 当你这样子回答的时候: 用户输入 url 地址,浏览器查询 DNS 查找对应的请求 IP 地址 建立 TCP 连接 浏览器向服务器发送 http 请求,如果服务器段返回以 301 之类 ...
随机推荐
- 如何在TFS的过程模板中添加报表
在新建团队项目的过程中,TFS的"新建团队项目向导"会根据用户选择的过程模板类型(CMMI, Scrum,Agile等)自动为团队项目创建一个SSRS(SQL Server Rep ...
- 用c/c++混合编程方式为ios/android实现一个自绘日期选择控件(一)
本文为原创,如有转载,请注明出处:http://www.cnblogs.com/jackybu 前言 章节: 1.需求描述以及c/c++实现日期和月历的基本操作 2.ios实现自绘日期选择控件 3.a ...
- selenium如何分别启动IE、firefox、chrome浏览器
1.火狐浏览器 /* * 初始化火狐浏览器 * */ public static WebDriver initFireFox(WebDriver dr) { String key = "we ...
- lock与C#多线程
lock与C#多线程 lock 关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁.简单讲就类似于 你去银行办理业务,一个柜台一次只能操作以为客户,而如果你要到这个柜台办理 ...
- 什么是Activity
Activity 的生命周期是被以下的函数控制的.public class Activity extends ApplicationContext { protected void onCr ...
- java 15 -3 集合的遍历的练习
练习:用集合存储5个动物对象,并把动物对象进行遍历. 分析: A:创建动物类 a:无参构造方法 b:有参构造方法 c:get.set方法 B:创建集合对象 a:Collection animal = ...
- ABP入门系列(6)——展现层实现增删改查
这一章节将通过完善Controller.View.ViewModel,来实现展现层的增删改查.最终实现效果如下图: 一.定义Controller ABP对ASP.NET MVC Controllers ...
- Xcode6与Xcode5中沙盒的变动以及偏好设置目录的变动
1.Xcode6模拟器路径与Xcode5模拟器路径对比: (1)Xcode5中模拟器路径为:/Users/用户名/Library/Application Support/iPhone Simulato ...
- [转]reids客户端 redis-cli用法
连接:redis-cli -h machine -p port -n db转的:每次都搜,还是扔在这 Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以 ...
- 加密算法使用(四):AES的使用
AES是一种对称加密方式,比DES更为安全,用一个秘钥加密数据之后,可以用同一个秘钥对加密后的数据解密还原,以下是一套以字符串为例子的使用全过程演示, 用到了 commons-codec.jar pa ...