西北马二最代码的gravatar头像
西北马二最代码2017-11-09 16:56:43
详细解读URL的组成

版权声明:该博文为博主原创,转载时请注明出处!

一、筹划了很久,想借助博客将URL相关的知识点进行一个综合的总结,今天得以有机会实现这个计划。

    在开篇之前,我们先来回忆一下我们进行目标网站查询的步骤,除了在浏览器检索框中输入一些关键字之外,我们还可以在地址栏里面输入相关网站的统一资源定位符,也就是俗称的URL,当然我们还可以将目标网站的IP地址充当做定位符,这些途径一般都能使得我们查询到自己想要的东西。

    那么接下来我们就先来学习统一资源定位符(URL)的组成。

   注意:Windows系统下,url不区分字母的大小写,但是在unix和Linux系统下,URL是区分大小写的。

二、 一个完整的URL组成结构组成如下:

    protocol://hostname[:port]/path/[;parameters][?query]#fragment   

   例如:http://www.coder.com:8080/WebApp/WebApp1.aspx?sex=name&age=20#name

   1、协议部分(protocol):在上例中使用的就是HTTP协议;

        指定使用的传输协议,下面列出的都是protocol属性有效选项的名称,最常用的是HTTP协议(超文本传输协议),它也是目前www中最为常见的协议。

        file  该协议指定的资源是本地计算机上的文件,格式为:file://

        ftp   通过FTP协议访问资源,格式为:FTP://

        gopher  通过Gopher协议访问该资源

        HTTP  通过HTTP协议访问该资源,格式为:http://

        https  通过加密的HTTP协议访问资源,格式为:target=_blank>https://

        mailto  资源为电子邮件访问地址,通过SMTP访问,格式为:mailto:

        MMS  通过支持MMS(流媒体)协议播放该资源,代表软件(Windows media player),格式为:MMS://

        ed2k  通过支持ed2k(专用下载链接)协议的p2p软件访问该资源,代表软件(电驴),格式为:ed2k://

        Flashget  通过支持Flashget(专用下载链接)协议的p2p软件访问该资源,代表软件(快车),格式为:Flashget://

        thunder  通过支持thunder(专用下载链接)协议的p2p软件访问该资源,代表软件(迅雷),格式为:thunder://

        news  通过NNTP访问该资源

        tencent  通过支持tencent(专用聊天链接)协议和用户通话,代表软件(QQ,TM),格式为:tencent://message/?uin=号码&Site=&Menu=yes

        msnim  通过支持msnim(抓用聊天链接)协议和用户通话,代表软件(MSN,WLM),格式为:msnim:chat?contact=邮箱地址

   2、主机名(hostname):在上例中主机名为www.coder.com;(域名部分)

        是指存放资源的服务器的域名系统(DNS)主机名或者IP地址,有时,在主机名前也可以包含连接到服务器所需的用户名和密码,格式为:(username:password)。

   3、端口号(port):在上例中端口号为8080;(端口部分)

        整数,是可选项,省略时使用的是所选协议的默认端口号,每种不同的协议都有它默认的端口号,比如HTTP协议的默认端口号就是80,但是当对端口号进行了重定义之后,就不能省略该项。

   4、路径(path):在上例中路径为/WebApp/;(虚拟目录部分)

        由零到多个“/”符号隔开的字符串,一般用来表示主机上的一个目录或者文件地址。

   5、参数(;parametars):在上例中参数为WebApp1.aspx;(文件名部分)

        是用于指定特殊参数的可选项,不是必需的选项,如果省略,将使用默认的文件名。

   6、查询(?query):在上例中查询为?sex=name&;age=20;(参数部分)

        是可选参数,用来给动态网页(利用PHP/asp.net/jsp/asp等技术制作的网页)传递参数,可有多个参数,参数与参数之间用“&”符号隔开,每个参数的名和值用“=”符号隔开。

   7、信息片段(fragment):在上例中信息片段为#name;(锚部分)

        格式为字符串,用于指定网络资源中的片段,利用某一网页中有多个名词解释,可以利用该属性直接定位到你想要的那个资源片段,不是必需的部分。


打赏

已有1人打赏

最代码官方的gravatar头像

分享到:

最近浏览
wd123E22前天
暂无贡献等级
Nero丶前天
最代码贡献等级说明
wk96257192011月15日
暂无贡献等级
weienqing11月15日
最代码贡献等级说明
心印语11月14日
最代码贡献等级说明
俏飘佳人11月14日
最代码贡献等级说明
暂无贡献等级
nsq000611月13日
最代码贡献等级说明
Justence11月10日
暂无贡献等级
王企鹅11月10日
暂无贡献等级
uuu121011月10日
最代码贡献等级说明
程序猿全敏 LV311月10日
最代码贡献等级说明
小王wang11月10日
最代码贡献等级说明
90907448911月10日
最代码贡献等级说明
Watson11月10日
最代码贡献等级说明
附耳聆听11月9日
最代码贡献等级说明
最代码官方 LV411月9日
最代码贡献等级说明
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友