1、URL是什么

  URL就是因特网资源的标准化名称。URL指向一条电子信息片段,告诉你它们位于何处,以及如何与之交互。通俗来说,就是浏览器寻找信息所需的资源位置。

  URI是一类更通用的资源标识符,URL是其子集,URI包括URL和URN。

2、URL的构成

  

  方案://服务器位置/路径

  第一部分是方案,如:http://i.cnblogs.com 中的http告诉博客园服务器将使用http协议访问资源。

  第二部分是服务器位置,如:i.cnblogs.com 告知Web客户端资源位于何处,通过DNS服务器解析域名访问到博客园服务器。

  第三部分是路径,如:/EditPosts.aspx 为资源路径,告知服务器需要资源的位置。

3、URL的语法

  大多数URL方案的URL语法都由这9部分构成,称为通用格式:

  

<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>

  看起来很长很多,但是几乎没有哪个URL中包含所有的这些组件,URL最重要的3个部分是 方案(scheme)、主机(host)、路径(path)。

通用URL组件
组件 描述 默认值
方案(scheme) 访问服务器以获取资源时要使用哪种协议
用户(user) 某些方案(如:ftp://joe:joespassword@ftp.prep.com/pub/gnu )访问资源时需要的用户名 匿名
密码(password) 用户名后面可能要包含的密码,中间由冒号(:)分隔 浏览器发送默认密码
主机 资源宿主服务器的主机名或以.分割的IP地址
端口 资源宿主服务器正在监听的端口号。很多方案都有默认端口号。 每个方案不同,如:HTTP 80、Https 443、FTP 21等
路径

服务器上的资源的本地名,由一个斜杠(/)将其与前面的URL组件分割开来。路径组件的语法是与服务器和方案有关的。

(每个路径段都有自己的参数组件)

参数 某些方案会用这个组件来指定输入参数。参数为key/value键值对,URL中可以包含多个参数字段,它们之间用;分割
查询

某些方案会用这个组件传递参数以激活应用程序。查询组件的内容没有通用格式。用字符"?"将其与URL其他部分分割。

很多网关希望查询字符串以一系列“key/value”对的形式出现,"key/value"对之间用&分割

片段 一小片或一部分资源的名字。引用对象时,不会将frag字段传送给服务器;这个字段在客户端内部使用。通常用于锚点链接。

总结:

  本章详细探讨了URL的发展历史和结构和语法等,书中还提到了相对URL路径转换成绝对URL的流程,和URL中对特殊字符的处理,以及列举了一些常用的scheme,学习之后对URL有较深的理解。

《HTTP权威指南》读书笔记(二) :URL与资源的更多相关文章

  1. HTTP权威指南读书笔记(一)HTTP概述、URL和资源及报文详解

    一.HTTP概述 1.WEB客户端和服务器. 2.资源:资源可以是各种格式的静态文件,也可以是应用程序. 3.媒体类型 4.URI:统一资源标识符 URL:统一资源定位符. URL的第一部分称为方案: ...

  2. HTTP权威指南读书笔记

    HTTP权威指南笔记 读书有两种境界,第一种境界是将书读薄,另一种是读厚.本篇文章就是HTTP权威指南的读书笔记,算是读书的第一重境界,将厚书读薄.文章对HTTP的一些关键概念做了比较详细的概述,通读 ...

  3. css权威指南读书笔记

    今天翻手机,翻到了许久之前看css权威指南时的笔记,遂移到博客中来. 1.属性选择器p.one class名为one的p元素p[class][name] 含有class和name属性的p元素p[cla ...

  4. Hadoop权威指南学习笔记二

    MapReduce简单介绍 声明:本文是本人基于Hadoop权威指南学习的一些个人理解和笔记,仅供学习參考,有什么不到之处还望指出,一起学习一起进步. 转载请注明:http://blog.csdn.n ...

  5. netty权威指南学习笔记二——netty入门应用

    经过了前面的NIO基础知识准备,我们已经对NIO有了较大了解,现在就进入netty的实际应用中来看看吧.重点体会整个过程. 按照权威指南写程序的过程中,发现一些问题:当我们在定义handler继承Ch ...

  6. 经典的性能优化最佳实践 web性能权威指南 读书笔记

    web性能权威指南 page 203 经典的性能优化最佳实践 无论什么网络,也不管所用网络协议是什么版本,所有应用都应该致力于消除或减 少不必要的网络延迟,将需要传输的数据压缩至最少.这两条标准是经典 ...

  7. css权威指南读书笔记-第10章浮动和定位

    这一章看了之后真是豁然开朗,之前虽然写了圣杯布局和双飞翼布局,有些地方也是模糊的,现在打算总结之后再写一遍. 以下都是从<css权威指南>中摘抄的我认为很有用的说明. 浮动元素 一个元素浮 ...

  8. HTTP权威指南阅读笔记二:URL与资源

    URL中的限制字符: 在URL中,有几个字符被保留起来,有着特殊的含义.有些字符不在定义的US-ASCII可打印字符集中.还有些字符会与某些因特网网关和协议产生混淆,因此不赞成使用. 下面这些字符是U ...

  9. Java性能优化权威指南-读书笔记(二)-JVM性能调优-概述

    概述:JVM性能调优没有一个非常固定的设置,比如堆大小设置多少,老年代设置多少.而是要根据实际的应用程序的系统需求,实际的活跃内存等确定.正文: JVM调优工作流程 整个调优过程是不断重复的一个迭代, ...

  10. Java性能权威指南读书笔记--之二

    新生代填满时,垃圾收集器会暂停所有的应用线程,回收新生代空间.这种操作被称为Minor GC. 老年代被填满时,垃圾收集器会暂停所有应用线程,对其进行回收,接着对堆空间进行整理.这个过程被称为Full ...

随机推荐

  1. gitlab安装随记

    gitlab安装 配置yum源 sudo vim /etc/yum.repos.d/gitlab-ce.repo 按照网上别人的例子,修改为清华的源 [gitlab-ce] name=Gitlab C ...

  2. SiteMesh3简介及使用

    所属专栏: Java开发经验记录   最近项目用到SiteMesh3,研究学习一段时间后决定写篇博文来记录收获. SiteMesh SiteMesh 介绍 工作原理 配置及使用 下载 1添加maven ...

  3. 开发企业微信打卡API笔记

    获取企业微信打开API上面的数据 根据企业ID和打卡模块的secret获取access_token 打卡传参body为json格式的字符传 创建打卡对象把参数写入,useridlist为list格式. ...

  4. git解决代码冲突

    1.当项目开发是几个人的时候,难免会出现代码冲突,使用git命令行解决冲突的方法如下: git checkout develop git pullgit checkout feature/新建会员功能 ...

  5. .NET--------枚举扩展方法(枚举转list,获取枚举描述)

    /// <summary> /// get enum description by name /// </summary> /// <typeparam name=&qu ...

  6. 【SoftwareTesting】Lab 2

    一.    在火狐浏览器上安装selenium插件 点击“开发者”的选项,然后点击“获取更多工具”,输入seleniumIDE进行搜索,找到后进行安装即可.安装完成后火狐浏览器的右上角会多出一个小的带 ...

  7. admin 显示多对多字段

    class BookAdmin(admin.ModelAdmin): def 作者(self, object): return [a.name for a in object.author.all() ...

  8. Git通过密钥对远程仓库上传和更新详细操作

    1,先到ssh中ls查看之前本地生成的公钥和私钥,然后将别人的密钥替换掉自己的密钥,这里我把别人的密钥放在d:/desktop/id_rsa 中,利用cp /D/Desktop/id_rsa  id_ ...

  9. unity3d 数据加/解密

    [/font]using System.Collections; using System.Text; using System.Security.Cryptography; using System ...

  10. 绘客708s的设置

    平时也有画画的想法,虽然画的不好,但是装备还是少不了的.因此,在大概一年之前就入手了绘客的708s的绘画板,10寸乘6寸的,很大,手绘方便多了. 在这段时间内,使用绘画板的时候还是遇到了一些问题,最主 ...