URL详解

首先什么是URL,在老师讲课时看到一张图,我觉得挺好,就直接把图粘过来了

URL的组成

scheme:// login:password @address:port/path/to/resource ?query_string #fragment



scheme:这个字段表示传输协议

常见的协议有:

file :访问本机的文件
ftp  :访问ftp服务器的协议
https :通过SSL协议的HTTP访问WEB服务器资源
mailto:访问资源属于电子邮箱地址,通过SMTP协议访问,打开当前计算机系统中默认的电子邮件客户端软件
ed2k,flashget,thunde等,通过支持专用下载协议的p2p软件访问资源

//
URL层级URL标记符号  根据RFC 1738规定的语法,在授权信息之前,每个层级结构的URL中都会包括固定的”//“符号
非层级结构的URL:mailto


login:password
访问资源的身份验证
在URL中,身份验证属于可选项,在向服务器申请资源时,在某些情况下,需要指定一个用户名和密码。
如果没有身份验证字段,浏览器默认以匿名的方式访问网站。
它与域名之间用@链接(如果有login:password才使用@符号)

address
域名
完整的层级URL,必须有一个域名,ipv4或者IPV6地址作为服务器的位置。域名不区分大小写,ipv6需要括在方括号中

:port
端口号 (默认为80)
基本上浏览器支持的协议都会关联的默认服务接口,不过默认接口可以在URL中进行修改


/path/to/resource  (路径)
URL的这部分被称为层级文件路径,这一结构源自于UNIX目录语义保留了对
/../ ,/ ./的支持


?query_string 
查询字符串是一个非必须的字段,只要负责将一系列非层级格式的任意参数传给服务器。可同时传递多个参数,参数之间用“$"符号连接,每个参数名与值用=隔开


#fragment
片段ID是应用有别于普通字符串
就是锚点,当你打开网站的某个连接的时候,自动跳到网站的某一个锚点(就是光标默认在哪里),该属性应用于客户端,并不会上传到服务器端


浏览器对URL的解析过程
1.提取协议名: 浏览器收到第一个URL后会查找第一个”:“,找到左边的便是协议名
2.去除层级标识符:字符串//应该算是跟在协议名后面的,如果发现有该字符就会跳过该字符如果没有找到就不管了,所以http www.baidu.com也可以访问

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值