【HTTP】HTPP学习笔记
1.了解web及网络基础
HTTP的诞生
TCP/IP协议族
应用层
FTP文件传输协议
HTTP超文本传输协议
DNS域名系统:IP地址<--->域名
传输层
TCP传输控制协议
三次握手详情
UDP用户报文协议
网络层
IP网际协议
链路层
URL/URI
HTTP协议与其他协议的关系
2.简单HTTP协议
通过请求和响应的交换达成通信
不保存状态的协议
可通过Cookies管理状态
HTTP方法
Get
请求服务器端的资源
Post
传输实体的主体
Put
传输文件
Head
获得报文首部
持久化连接
Connection:keep-alive
3.HTTP报文内的HTTP信息
3.1HTTP报文
3.1.1报文首部
请求报文首部
响应报文首部
通用首部
实体首部
3.1.2报文实体
3.2提升传输速率的手段
1)压缩格式
2)分块传输
3.3获取部分内容
Range:bytes=5001-10000
3.4内容协商
Accept
Accept-Charset 字符集
Accept-Encoding 编解码方式
Accept-Language 语言
4.返回结果的HTTP状态码
2XX 成功
200 ok
204 no content
206 partial content
3XX 重定向
302 Found
304 Not Modified
4XX 客户端错误
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
5XX 服务器错误
500 Internal Server Error
503 Server Unavailable
5.与HTTP协作的Web服务器
5.1代理
是否使用缓存
是否修改报文
5.2网关
通向另一个网络的入口
5.3隧道
6.HTTP首部
6.1通用首部字段
Cache-Control
控制缓存行为
Connection
逐跳首部、连接的管理
Data
创建报文日期时间
Via
代理服务器信息
...
6.2请求首部字段
q表示权值
Accept:用户代理可处理的媒体类型
text/html:文本文档
application/xhtml+xml
Accept-Charset:优先字符集
Accept-Encoding:优先内容编码
Authorization
If-Modified-Since
User-Agent
Host
Referer:对请求中URI的原始获取方
著名博客网站coolshell应该就是使用referer来检测你是否从Baidu转入
...
6.3响应首部字段
6.4实体首部字段
7.确保web安全的https
7.1http的缺点
1)通信使用明文,内容可能会被窃听
2)不验证对方身份,可能遭遇伪装
3)无法证明报文完整性,内容可能被篡改
7.2http+加密+认证+完整性保护=https
附录:HTTP学习笔记之思维导图版
参考资料:《图解HTTP》(日 上野宣)
【HTTP】HTPP学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
随机推荐
- win8硬盘安装Ubuntu14.04双系统參考教程
硬盘安装,无需光盘.U盘.win8为主.Ubuntu14.04为辅.可将Windows或Ubuntu设置为开机默认启动项.在Ubuntu下可查看.操作Windows系统下的文件:适用于安装和14.04 ...
- mobx 小结
1.@observable 是一种让数据的变化可以被观察的方法 //@observable data 注册一个数据,这个数据将会成为一个可mobx监测的数据 2.decorator 修饰器只能修饰 类 ...
- 捕获php请求内容
通过将phpinfo()打印到文件实现 <?php echo str_pad('', 1024);//使缓冲区溢出 ob_start();//打开缓冲区 phpinfo(); $string = ...
- C#写csv文件
1.在项目中经常需要把报表下载为csv格式的文件,如何在C#中写csv文件,以下为一个简化的例子,不使用任何控件,旨在说明用法. 前端view 下载结果 2.创建一个MVC项目(Intranet Ap ...
- ASP.NET MVC自定义视图引擎ViewEngine 创建Model的专属视图
MVC内置的视图引擎有WebForm view engine和Razor view engine,当然也可以自定义视图引擎ViewEngine. 本文想针对某个Model,自定义该Model的专属视图 ...
- 解析spark RDD
RDD是spark抽象的基石,可以说整个spark编程就是对RDD进行的操作 RDD是弹性的分布式数据集,它是只读的,可分区的,这个数据集的全部或者部分数据可以缓存在内存中,在多次计算间重用.所谓 ...
- IOS开发中的分享到邮件
本篇和UIWebView的全屏截图,可以一起使用,先对UIWebView进行截图,然后分享到邮箱(当时做还有分享到微信.腾讯微博.新浪微博功能,这三个根据官方资料,比较容易实现,这里就不进行解说了). ...
- kafka官方Quick Start
1.下载kafka,并上传到服务器 2.如果之前没安装zookeeper,这里可以启动一个简单的zookeeper bin/zookeeper-server-start.sh config/zooke ...
- bg、fg、nohup
1.bg 执行如下命令: tail -f log.txt 此时程序是在前台运行的,将程序放到后台执行,按ctrl+z,执行结果如下: []+ Stopped tail -f log.txt 执行bg命 ...
- 08 nginx Location总结图解