Http权威指南(一)---读书笔记
Chart1
====概述====
- 最简单的的资源是web服务器文件系统中的静态文件。当然可以上动态,但要经过网关?(不确定)
下面见图:


2. URI(uniform Resource Identifier) 同一资源标识符:类比邮政地址
URI可以有两种格式 1.URL(同一资源定位符) 2.URN
(1) URL:分为三个部分,1.协议(http://)2.地址(www.baidu.com)3.特定资源:/1.pic
(2) URN:开发阶段
3. 常见的HTTP方法:

4. 协议格式

注:一个“web页面”通常不是单个资源,而是一组资源的集合。
5. web结构组件
(1)代理:

(2)缓存或称代理缓存:

(3)网关,网关是一种特殊的服务器,作为其他服务器的中间实体使用:

(4)隧道,隧道建立后,会在两条连接之间对原始数据进行盲转发:

(5)Agent代理,web浏览器就是一个agent代理:

Chart2
====URL和资源====
- URL组成:
<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag> ---(1)

注:上图是一个常见URL组成。下面是(1)各个组件的说明:

分组件注意点:
(1)http://大小写不敏感
(2)URL上添加附件信息的情况:ftp://prep.ai.mit.edu/pub/gnu;type=d;graphics=true
(3)包含查询字符串的情况:http://www.joes.../..check.cgi?item=1224
(4)片段:http://www.joes..../tools.html#drills,注意web浏览器并不会将片段发送给服务器:

2. 三种URL

这边解释了将相对URL转为绝对URL的算法:
(1)有一段HTML代码片段:

(2)根据算法

相应的具体描述:

3. URL使用的编码机制
URL为了适应不同的编码,提供转义功能:

注:保留部分用于特殊符号,如:%,#...
4. 常见的web方案:
(1)http:
http://www.baidu.com,默认端口80
(2)https:
https://bing.com,默认端口443 (同http结构一致,区别在于提供端到端的加密机制)
(3)mailto:E-main地址
mach@163.com
(4)ftp:
ftp://<user>:<password>@<host>:<port>/<path>;<params>
(5)rtsp,rtspu:Real Time Streaming Protocol
rtsp/rtspu://<user>:<password>@<host>:<port>/<path>
(6)file:
file://Office/policies/fun.doc
(7)news:注意,它们是位置无关的,意思是可以不依赖于一台的源服务器
news:rec.arts.startrek
(8)telent:
telnet://<user>:<password>@<host>:<port>/ 默认端口23
Chart3
====Http报文====
1. 一个完整的简单的HTTP事物:

2. 常见的Http方法:

常见方法解析:
(1)Get:安全方法(不对服务端的结果产生影响(特指一般)如果程序员想改变点什么...)

(2)Head:安全方法,使用Head很重要的一点就是可以获取文件的长度

(3)Put:上传文件

(4)Post:协议交互一般使用Post

(5)Trace:主要用于诊断

(6)Options:询问当前服务器支持的类型

(7)Delete: 删除,注意服务器可以不执行此操作

(8)扩展方法:暂略
3. 状态码:

注:上图为状态码的简单分类
部分状态码介绍:
(1)100 Continue状态码:
发生情况:客户端需要发送主体到服务器上,但不清楚服务器是否能解析该主体,所以客户端
选择先发送一个协议给服务端,服务端如果接收到相应协议,就应该Respone给客户端。
(2)关于300~399重定向状态码:

4. 报文首部(头)
一、通用首部
(1)信息:

(2)缓存:

二、请求首部
(1)信息:

(2)Accept:

(3)条件请求:

(4)安全请求:

(4)代理请求:

三、响应首部
(1)信息性:

(2)协商:

(3)安全:

四、实体首部
(1)信息:

(2)内容:

(3)缓存:

Http权威指南(一)---读书笔记的更多相关文章
- 《javascript权威指南》读书笔记——第二篇
<javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字 ...
- 《javascript权威指南》读书笔记——第一篇
<javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...
- 《Kafka权威指南》读书笔记-操作系统调优篇
<Kafka权威指南>读书笔记-操作系统调优篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大部分Linux发行版默认的内核调优参数配置已经能够满足大多数应用程序的运 ...
- 《Hadoop权威指南》读书笔记1
<Hadoop权威指南>读书笔记 Day1 第一章 1.MapReduce适合一次写入.多次读取数据的应用,关系型数据库则更适合持续更新的数据集. 2.MapReduce是一种线性的可伸缩 ...
- 【vue.js权威指南】读书笔记(第一章)
最近在读新书<vue.js权威指南>,一边读,一边把笔记整理下来,方便自己以后温故知新,也希望能把自己的读书心得分享给大家. [第1章:遇见vue.js] vue.js是什么? vue.j ...
- 《javascript权威指南》读书笔记(连载)
这是一篇很长的博客 终于把权威指南给买回来了,之前一直犹豫,第一:书太厚,怕买了不能坚持看完.第二:觉得太贵,最少100¥.现在实习也能发点工资了,给自己定了一个志愿:把一个月的工资用于买书.这么一想 ...
- (6)《Head First HTML与CSS》学习笔记---结尾、《HTML5权威指南》读书笔记
1.内联元素的外边距.内边距与块元素稍有不同. 如果一个内联元素四周都增加外边距,只能看到左边和右边会增加空间:你也可以对内联元素的上下增加内边距,不过这个内边距不会影响包围它的其他内联元素的间距—— ...
- 《k8s权威指南》读书笔记
抽空读完了<k8s权威指南>一书,对k8s的总算有了较为系统的认知. 好记忆不如多写字,以下是读书笔记 第一章 k8s入门 k8s是什么: 一个开源的容器集群管理平台,可提供容器集群的自动 ...
- 《JavaScript权威指南》读书笔记(一)
日期 2015-11-28 把之前的读书笔记在我弄丢它之前搬过来~~ 时间过去好久,回头一看理解都不一样了. 重点浏览了一下和Java的不同之处: js是一种宽松类型语言:js不区别整形数值与浮点型数 ...
- 《JavaScript权威指南》读书笔记——JavaScript核心
前言 这本由David Flanagan著作,并由淘宝前端团队译的<JavaScript权威指南>,也就是我们俗称的“犀牛书”,算是JS界公认的“圣经”了.本书较厚(有1004页),读起来 ...
随机推荐
- 有关C#中使用if else和try catch的问题及效率问题
本来if esle 是流程控制 try catch是异常处理,本身其实是没有可比性的,但是开发过程中有的人很容易混用,而且两者有的时候效果似乎一样,所以我还是用了个简单的测试来简单的比较下. 不多说, ...
- [Js]拖拽
分析: 1.鼠标按下,拖拽开始,鼠标移动,拖拽进行,鼠标抬起,拖拽结束(三个事件) 2.被拖动元素与鼠标之间的位置在拖动过程中始终不变,利用这个原理,被拖动元素的位置就是鼠标的左(上)边距-鼠标与被拖 ...
- js基础之动画(一)
一.让div动起来 var oBtn = document.getElementById('btn1'); var timer='';//设置定时器 oBtn.onclick=function st ...
- 简单探索ContentProviderOperation
前面一片文章中用到了ContentProviderOperation,那么我们就来看看ContentProviderOperation到底是怎么工作的. 1. ContentProviderOpera ...
- wp8.1 Study10:APP数据存储
一.理论 1.App的各种数据在WP哪里的? 下图很好介绍了这个问题.有InstalltionFolder, knownFolder, SD Card... 2.一个App的数据存储概览 主要分两大部 ...
- HDU 5442 后缀自动机+kmp
题目大意: 给定一个字符串,可理解成环,然后选定一位置,逆时针或顺时针走一遍,希望得到字典序最大,如果同样大,希望找到起始位置最小的,如果还相同,就默认顺时针 比赛一直因为处理最小位置出错,一结束就想 ...
- 经典线程同步 事件Event
阅读本篇之前推荐阅读以下姊妹篇: <秒杀多线程第四篇 一个经典的多线程同步问题> <秒杀多线程第五篇 经典线程同步关键段CS> 上一篇中使用关键段来解决经典的多线程同步互斥问题 ...
- fragment 添加menu
http://bbs.51cto.com/thread-1091458-1-1.html 有详解 @Override public void onCreate(Bundle savedInstance ...
- [安卓]AndroidManifest.xml文件简介及结构
1.AndroidManifest.xml文件简介: 每个应用程序在它的根目录中都必须要有一个AndroidManifest.xml(名字须精确一致)文件.这个清单把应用程序的基本信息提交给Andro ...
- SharePoint表单和工作流 - Nintex篇(七)
博客地址 http://blog.csdn.net/foxdave 接上篇点击打开链接 在工作流设计面板点击Close返回到列表页面,切换到List标签,选择"Nintex Forms&qu ...