• URL与URI的区别和联系


    URL与URI的区别和联系

     来自: 

      最近学习JavaWeb时发现URL与URI这两个缩写,于是感到很困惑,不知道这两个名字很像的缩写表示什么含义,于是我上网搜了一下,总结如下:

    一、关于URL

      1) URL定义:

      在WWW上,每一信息资源都有统一的且在网上唯一的地址,该地址就叫URLUniform Resource Locator,统一资源定位符),它是WWW的统一资源定位标志,就是指网络地址

      简单来说就是你打开一个浏览器,地址栏上显示的网址,例如:

      

      2) URL格式:

      URL由三部分组成:资源类型、存放资源的主机域名、资源文件名,也可认为由4部分组成:协议、主机、端口、路径。
      URL的一般语法格式为:(带方括号[]的为可选项):
      protocol :// hostname[:port] / path / [;parameters][?query]#fragment
      例如http://www.baidu.com:80/

      a)protocol(协议)

      指定使用的传输协议,下表列出 protocol 属性的有效方案名称。 最常用的是http协议,它也是目前WWW中应用最广的协议。常见协议如下:
      file 资源是本地计算机上的文件。格式file:///,注意后边应是三个斜杠。
      ftp 通过 FTP访问资源。格式 FTP://
      gopher 通过 Gopher 协议访问该资源。
      http 通过 HTTP 访问该资源。 格式 HTTP://
      https 通过安全的 HTTPS 访问该资源。 格式 HTTPS://
      mailto 资源为电子邮件地址,通过 SMTP 访问。 格式 mailto:
      MMS 通过 支持MMS(流媒体)协议的播放该资源。(代表软件:Windows Media Player)格式 MMS://
      ed2k 通过 支持ed2k(专用下载链接)协议的P2P软件访问该资源。(代表软件:电驴) 格式 ed2k://
      Flashget 通过 支持Flashget:(专用下载链接)协议的P2P软件访问该资源。(代表软件:快车) 格式 Flashget://
      thunder 通过 支持thunder(专用下载链接)协议的P2P软件访问该资源。(代表软件:迅雷) 格式 thunder://
      news 通过 NNTP 访问该资源。

      b)hostname(主机名)

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

      c)port(端口号)

      整数,可选,省略时使用方案的默认端口,各种传输协议都有默认的端口号,如http的默认端口为80。如果输入时省略,则使用默认端口号。有时候出于安全或其他考虑,可以在服务器上对端口进行重定义,即采用非标准端口号,此时,URL中就不能省略端口号这一项。

      d)path(路径)

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

      e)parameters(参数)

      这是用于指定特殊参数的可选项。

      f)query(查询)

      可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP。NET等技术制作的网页)传递参数,可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开

      g)fragment(信息片断)

      字符串,用于指定网络资源中的片断。例如一个网页中有多个名词解释,可使用fragment直接定位到某一名词解释。

    二、关于URI

      1)URI定义

      在电脑术语中,统一资源标识符(Uniform Resource Identifier,URI)是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对任何(包括本地和互联网)的资源通过特定的协议进行交互操作。URI由包括确定语法和相关协议的方案所定义。  

      2)URI格式

      URI格式由URI协议名(例如HTTP、FTP、mailto、file),一个冒号,和协议对应的内容所构成。特定的协议定义了协议内容的语法和语义,而所有的协议都必须遵循一定的URI文法通用规则,亦即为某些专门目的保留部分特殊字符。URI文法同时也就各种原因对协议内容加以其他的限制,例如,保证各种分层协议之间的协同性。百分号编码也为URI提供附加信息。
      URL的格式由下列三部分组成:,第一部分是协议(或称为服务方式);第二部分是存有该资源的主机IP地址(有时也包括端口号);第三部分是主机资源的具体地址。
      具体URI的格式如下:
      [协议名]://[用户名]:[密码]@[服务器地址]:[服务器端口号]/[路径]?[查询字符串]#[片段ID]

    三、二者的区别和联系

      URL是一种URI,它标识一个互联网资源,并指定对其进行操作或获取该资源的方法。可能通过对主要访问手段的描述,也可能通过网络“位置”进行标识。URI可被视为定位符(URL),名称(URN)或两者兼备。统一资源名(URN)如同一个人的名称,而统一资源定位符(URL)代表一个人的住址。换言之,URN定义某事物的身份,而URL提供查找该事物的方法。URN仅用于命名,而不指定地址。
  • 相关阅读:
    【锁】java 锁的技术内幕
    【BlockingQueue】BlockingQueue 阻塞队列实现
    【多线程】获取多个线程任务执行完事件
    【spring cloud】源码分析(一)
    【spring boot】FilterRegistrationBean介绍
    【FAQ】服务下线
    解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)...
    实现人民币大写代码解析
    application.yml使用@符合问题:'@' that cannot start any token. (Do not use @ for indentation)
    Maven常见异常及解决方法---测试代码编译错误
  • 原文地址:https://www.cnblogs.com/zy09/p/13496808.html
Copyright © 2020-2023  润新知