• URL详解


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

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

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

    服务器的因特网地址(www.baidu.com或者csh.joes.com)

    web服务器上的某个资源 (/spa/csh.php)

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

     

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

    通用格式:方案://用户名:密码@主机名:端口/服务器上资源的路径;参数?查询#片段

    1、方案:指访问服务器以获取资源时要使用哪种协议。比如,http、https和FTP等

    2、主机和端口:指资源宿主服务器的主机名或IP地址。端口是指资源宿主服务器正在监听的端口,很多HTTP的默认端口号是80。比如,130.32.12.34:800,这里的IP地址是主机名,端口是800

    3、用户名和密码:很多服务器都要求输入用户名和密码才会允许用户访问数据,如FTP服务器。

    例子:joe是用户名、joepasswd是密码

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

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

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

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

    5、参数:为了向应用程序提供它们所需要的输入参数,以便正确地与服务器进行交互,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

  • 相关阅读:
    WCF、WebAPI、WCFREST、WebService之间的区别
    常见的排序方法
    PHP中日期时间函数date()用法总结
    controller中获取全局配置111
    Zf2 自定义组件库如何设置
    module/config/module.config.php文件内涵定义
    zf2环境设置
    菜菜鸟Zend Framework 2 不完全学习涂鸦(四)-- 模块
    菜菜鸟Zend Framework 2 不完全学习涂鸦(三)-- 例子功能设置
    菜菜鸟Zend Framework 2 不完全学习涂鸦(二)-- 类库共享
  • 原文地址:https://www.cnblogs.com/GoogleGetZ/p/10156628.html
Copyright © 2020-2023  润新知