浏览器因特网资源:URL是浏览器寻找信息时所需的资源位置。通过URL。应用程序才干找到并使用共享因特网上大量的数据资源。

大部分URL都遵循一种标准的格式:

①HTTP协议(http://或者https://)

②server的因特网地址(www.baidu.com或者csh.joes.com)

③webserver上的某个资源 (/spa/csh.php)

④传某个数据给server上的资源(可选,?name=csh&age=25)

URL的语法:大多数URL语法都建立在9个部分构成的通用格式上。而当中最重要的是方案(scheme)、主机(host)和路径(path)

通用格式:方案://username:password@主机名:port/server上资源的路径;參数?查询#片段

1、方案:指訪问server以获取资源时要使用哪种协议。比方。http、https和FTP等

2、主机和port:指资源宿主server的主机名或IP地址。

port是指资源宿主server正在监听的port。非常多HTTP的默认port号是80。比方。130.32.12.34:800。这里的IP地址是主机名。port是800

3、username和password:非常多server都要求输入username和password才会同意用户訪问数据,如FTPserver。

样例:joe是username、joepasswd是password

ftp://joe:joepasswd@ftp.prep.edu/pub/name

4、路径:路径说明了资源位于server的什么地方。

样例:/cans/index.html就是URL中的路径

http://www.hda.com/cans/index.html

5、參数:为了向应用程序提供它们所须要的输入參数。以便正确地与server进行交互,URL中有个參数组件。由字符“;”将其与URL的其余部分分隔开来。

样例:;type=7;nam=true就是两个參数。

ftp://prep.mit.edu/pub;type=7;nam=true

6、查询:非常多资源。比方数据库服务、搜索引擎,都能够通过提问题或进行查询来缩小请求资源的范围。由字符“?

”将其与URL的其余部分分隔开来。

样例:查询组件有两个名/值对:name=csh和age=24

http://www.cheng.cn/si.html?name=csh&age=24

7、片段:#代表网页中的一个位置,其右面的字符就是该位置的标识符(普通情况下,锚链接会用到)

样例:以下的URL中,代表网页si.index的print位置,浏览器读取这个URL后,会自己主动将print位置滚动至可视区域。

http://www.cheng.cn/si.html#print

URL的分类:URL能够分为绝对URL和相对URL

绝对URL:绝对URL中包括了訪问资源所需的所有信息。

案例:<a href=’http://cheng.com/si.html></a>

相对URL:相对URL包括的仅仅是訪问资源所需的部分信息。而要想得到訪问资源的所有信息的话,就要和还有一个被称为基础(base)的URL结合进行解析

案例:<script src="lib/sea.js"></script>

相对URL中的基础URL:转换相对URL的第一步就是找到基础URL

1、在资源中显式地指定基础URL。

比方,HTML文档中可能会包括一个定义了基础URL的HTML标签<base>

2、封装资源的基础URL。在HTML中,基础URL能够从它们所属资源的基础URL中推导出来

案例:HTML页面中的基础URL

页面URL:http://www.cheng.com/si/sa.html

上述HTML页面的基础URL是http://www.cheng.com

URL具体解释的更多相关文章

  1. 列出下面几项的URL并解释每部分代表的含义

    列出下面几项的URL并解释每部分代表的含义 a.你的学校 b.你的学校的计算机科学系 c.你的老师的主页

  2. java url方法解释

    java 的url类中有很多get方法 以下是获取值的意义 // 首先先看一下wikipedia上关于url的一个描述 //Every HTTP URL conforms to the syntax ...

  3. urllib.parse.urldefrag(url)的解释

    引自https://www.cnblogs.com/ublue/articles/4471210.html 1.URL hash(片段标识符) 任一带#的URL称为片段URL(通常称为URL hash ...

  4. [UnicodeEncodeError]:Django中解决URL中文解释乱码问题

    Django中在使用HttpResponseRedirect的时候,跳转URL中如果存在中文,会报错:会报UnicodeEncodeError错误. 解决办法: 使用urlquote对URL进行编码 ...

  5. url语法

    URL的主要部分 URL通常被写成如下形式: <方案>:<方案描述部分> 一个URL包含了它使用的方案名称(<方案>), 其后紧跟一个冒号,然后是一个字符串 (&l ...

  6. go标准库的学习-net/url

    参考:https://studygolang.com/pkgdoc 导入方式: import "net/url" url包解析URL并实现了查询的逸码,参见RFC 3986. fu ...

  7. sqlalchemy源代码阅读随笔(4):url。py 阅读

    在_to_string中,有 _rfc_1738_quote(text): 这个函数.这个主要是遵循 RFC 1738的规则.对传入的信息(主要是用户名或者密码)进行格式匹配.其代码就一行: retu ...

  8. 从URL输入到页面展现,过程中发生了什么?

    从在地址栏中输入了URL,到浏览器展现出页面整个过程中,大概经历了如下过程: 在浏览器地址中输入了URL并回车 域名解析 服务器处理请求 浏览器处理 网页的绘制 一.在浏览器地址中输入URL 首先解释 ...

  9. Django中url name

    花了好长时间才明白这个name参数的含义.便写下来了备忘 当我们在url的时候,一般情况下都是使用很明确的url地址.如在网页里面使用<a href="/login"> ...

随机推荐

  1. Ext checkbox

    Ext.require([     'Ext.grid.*',     'Ext.data.*',     'Ext.util.*',     'Ext.grid.PagingScroller',   ...

  2. MySQL 删除数据库

    MySQL 删除数据库 使用 mysqladmin 删除数据库 使用普通用户登陆mysql服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库. 所以我们这边使用root用户登录,root用 ...

  3. JavaScript--Date函数

    1. Date函数 var now = new Date(); 获取当前日期对象 now对象->Date.prototype->Object.prototype 将一个字符串转换为Date ...

  4. [LeetCode OJ] Reorder List—Given a singly linked list L: L0→L1→…→Ln-1→Ln, reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→…

    For example,Given {1,2,3,4}, reorder it to {1,4,2,3}. /** * Definition for singly-linked list. * str ...

  5. NoSQL数据库技术特性解析之文档数据库

    现今云计算的从业人员对NoSQL一词并不感到陌生,虽然很多技术人员都长期从事关系数据库的工作,但现在他们对NoSQL技术充满期待.对于企业来说,从关系型数据库到NoSQL数据库转变绝对是个需要深思熟虑 ...

  6. 挂载NTFS

    1.安装ntfs-3g wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2015.3.14.tgz --no-check-certificat ...

  7. w3wp异常

    相信做ASP.NET中大型Web应用的人都碰到过OutOfMemoryException这个异常,对于这个问题我研究了很久,在微软的技术文档上也了解过此问题出现的原因,说实话,到目前我仍然没有完美的解 ...

  8. python Template中substitute()的使用

    在python中Template可以将字符串的格式固定下来,重复利用. Template属于string中的一个类,要使用他的话可以用以下方式调用: from string import Templa ...

  9. Memcached源码分析——process_command函数解析

    以下为个人笔记 /** * process_command 在memcached中是用来处理用户发送的命令的, * 包括get set,add,delete,replace,stats,flush_a ...

  10. SVN管理工具Cornerstone之:创建分支、提交合并

      创建工程的分支: 步骤: 1.选择左下角仓库repositories中的工程名->选择trunk->点击Branch->在提示框里填写分支名称create, 2.在做上角work ...