Chart1

====概述====

  1. 最简单的的资源是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和资源====

  1. 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权威指南(一)---读书笔记的更多相关文章

  1. 《javascript权威指南》读书笔记——第二篇

    <javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字 ...

  2. 《javascript权威指南》读书笔记——第一篇

    <javascript权威指南>读书笔记——第一篇 金刚 javascript js javascript权威指南 由于最近想系统学习下javascript,所以开始在kindle上看这本 ...

  3. 《Kafka权威指南》读书笔记-操作系统调优篇

    <Kafka权威指南>读书笔记-操作系统调优篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 大部分Linux发行版默认的内核调优参数配置已经能够满足大多数应用程序的运 ...

  4. 《Hadoop权威指南》读书笔记1

    <Hadoop权威指南>读书笔记 Day1 第一章 1.MapReduce适合一次写入.多次读取数据的应用,关系型数据库则更适合持续更新的数据集. 2.MapReduce是一种线性的可伸缩 ...

  5. 【vue.js权威指南】读书笔记(第一章)

    最近在读新书<vue.js权威指南>,一边读,一边把笔记整理下来,方便自己以后温故知新,也希望能把自己的读书心得分享给大家. [第1章:遇见vue.js] vue.js是什么? vue.j ...

  6. 《javascript权威指南》读书笔记(连载)

    这是一篇很长的博客 终于把权威指南给买回来了,之前一直犹豫,第一:书太厚,怕买了不能坚持看完.第二:觉得太贵,最少100¥.现在实习也能发点工资了,给自己定了一个志愿:把一个月的工资用于买书.这么一想 ...

  7. (6)《Head First HTML与CSS》学习笔记---结尾、《HTML5权威指南》读书笔记

    1.内联元素的外边距.内边距与块元素稍有不同. 如果一个内联元素四周都增加外边距,只能看到左边和右边会增加空间:你也可以对内联元素的上下增加内边距,不过这个内边距不会影响包围它的其他内联元素的间距—— ...

  8. 《k8s权威指南》读书笔记

    抽空读完了<k8s权威指南>一书,对k8s的总算有了较为系统的认知. 好记忆不如多写字,以下是读书笔记 第一章 k8s入门 k8s是什么: 一个开源的容器集群管理平台,可提供容器集群的自动 ...

  9. 《JavaScript权威指南》读书笔记(一)

    日期 2015-11-28 把之前的读书笔记在我弄丢它之前搬过来~~ 时间过去好久,回头一看理解都不一样了. 重点浏览了一下和Java的不同之处: js是一种宽松类型语言:js不区别整形数值与浮点型数 ...

  10. 《JavaScript权威指南》读书笔记——JavaScript核心

    前言 这本由David Flanagan著作,并由淘宝前端团队译的<JavaScript权威指南>,也就是我们俗称的“犀牛书”,算是JS界公认的“圣经”了.本书较厚(有1004页),读起来 ...

随机推荐

  1. easyui datagrid导出excel

    [第十四篇]easyui datagrid导出excel   <a class="btn btn-app" onclick="exportExcel()" ...

  2. Huffman树与编码的简单实现

    好久没写代码了,这个是一个朋友问的要C实现,由于不会C,就用JAVA写了个简单的.注释掉的代码属性按照原来朋友发的题里带的参数,发现没什么用就给注释掉了. package other; import ...

  3. 扫盲如何在ECLIPSE中使用条件断点

    有时候在编码的时候我们希望知道代码变量符合某个条件时,才中断点,其他的情况不中断点.   解决办法1:   我们写个代码 判断,符合条件在符合条件处进行断点,这个方法很麻烦,需要去修改代码,不要是还需 ...

  4. spring中配置jdbc数据源

    1.加入jdbc驱动器包,mysql-connector-java.jar 2.加入commons-dbcp.jar配置数据源 3.在classpath下新建文件jdbc.properties,配置j ...

  5. JS引用类型之——RegExp

    前言 之前小猪分享过关于正则表达式的一些内容,具体请看传送门,今天小猪来分享怎么在js中使用正则表达式. 定义 ECMAScript通过RegExp类型来支持正则表达式.使用下面类似Perl的语法,就 ...

  6. [转]使用maven镜像

    综述 用maven做项目,最郁闷的莫过于某些依赖库下载不了.被墙了,你懂的.使用maven镜像仓库及其重要,特别是国内的镜像,可以有效缓解被墙疼痛. 常用的镜像 国外镜像 ibiblio.org &l ...

  7. 转: ORACLE索引介绍和使用

    1.什么是索引 索引是建立在表的一列或多个列上的辅助对象,目的是加快访问表中的数据: Oracle存储索引的数据结构是B*树,位图索引也是如此,只不过是叶子节点不同B*数索引: 索引由根节点.分支节点 ...

  8. SQL Server 自定义字符串分割函数

    一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果(标量值函数)   create function Func_StrArrayL ...

  9. 过滤器 Filter

    Filter(过滤器)简介 Filter 的基本功能是对发送到 Servlet 的请求进行拦截, 并对响应也进行拦截. Filter 程序是一个实现了 Filter 接口的 Java 类,与 Serv ...

  10. mouseOver与rollOver

    区别: 当父容器监听这两个事件,鼠标从父容器移到子容器再移回父容器时,会触发mouseOver.mouseout事件,但是不会触发rollover.rollout事件.