02 # URL 简介

简介: 02 # URL 简介

说明

网道HTML 教程学习笔记



1、概述

URL 是“统一资源定位符”(Uniform Resource Locator)的首字母缩写,中文译为“网址”,表示各种资源的互联网地址。




2、网址的组成部分


2.1、协议

协议(scheme)是浏览器请求服务器资源的方法,比如https://,表示使用 HTTPS 协议。



2.2、主机

主机(host)是资源所在的网站名或服务器的名字,又称为域名。比如www.example.com。


2.3、端口

同一个域名下面可能同时包含多个网站,它们之间通过端口(port)区分。默认端口是80,比如www.example.com:80


2.4、路径

路径(path)是资源在网站的位置。


2.5、查询参数

查询参数(parameter)是提供给服务器的额外信息。


参数的位置是在路径后面,两者之间使用?分隔,每组参数都是键值对(key-value pair)的形式,比如?key1=value1&key2=value2。



2.6、锚点

锚点(anchor)是网页内部的定位点,使用#加上锚点名称,放在网址的最后,比如#anchor。浏览器加载页面以后,会自动滚动到锚点所在的位置。




3、URL 字符


URL 的各个组成部分,只能使用以下这些字符。


   26个英语字母(包括大写和小写)

   10个阿拉伯数字

   连词号(-)

   句点(.)

   下划线(_)


此外,还有18个字符属于 URL 的保留字符,只能在给定的位置出现。

URL 字符转义的方法是,在这些字符的十六进制 ASCII 码前面加上百分号(%)。


   !:%21

   #:%23

   $:%24

   &:%26

   ':%27

   (:%28

   ):%29

   *:%2A

   +:%2B

   ,:%2C

   /:%2F

   ::%3A

   ;:%3B

   =:%3D

   ?:%3F

   @:%40

   [:%5B

   ]:%5D


URL 的合法字符,其实也可以采用这种转义方法,但是不建议使用。


比如:www.apple.com又可以写成www.%61pple.com


注意:

既不属于合法字符、也不属于保留字符的其他字符(比如汉字),理论上不需要手动转义,可以直接写在 URL 里面,比如www.example.com/中国.html,浏览器会自动将它们转义,发给服务器。转义方法是使用这些字符的十六进制 UTF-8 编码,每两位算作一组,然后每组头部添加百分号(%)。



4、绝对 URL 和相对 URL

绝对 URL 指的是,只靠 URL 本身就能确定资源的位置。


相对 URL 指的是,URL 不包含资源位置的全部信息,必须结合当前网页的位置,才能定位资源。

URL 还可以使用两个特殊简写,表示特定位置。


   .:表示当前目录,比如./a.html(当前目录下的a.html文件)

   ..:表示上级目录,比如…/a.html(上级目录下的a.html文件)




5、<base>


标签指定网页内部的所有相对 URL 的计算基准。

整张网页只能有一个标签,而且只能放在里面。


它是单独使用的标签,没有闭合标签

<!-- href属性给出计算的基准网址,target属性给出如何打开链接的说明 -->
<head>
    <base href="https://www.example.com/files/" target="_blank">
</head>


注意,标签必须至少具有href属性或target属性之一。锚点也是针对计算的。

例子:当你点击a链接跳转attribute.html页面时就会跳转到http://www.foo.com/app/attribute.html

<head>
    <base href="http://foo.com/app/">
</head>
<a href="attribute.html">元素的属性</a>
目录
相关文章
|
6月前
|
Python
URL分发机制简介
URL分发机制简介。
61 1
|
6月前
|
Python
URL命名空间简介
URL命名空间简介。
100 1
|
缓存 网络协议 Java
网络基础 HTTP协议之http url简介
网络基础 HTTP协议之http url简介
158 0
Flutter 插件url_launcher简介及使用,打开外部浏览器,拨打电话,发送短信,打开微信,支付宝,qq等
Flutter 插件url_launcher简介及使用,打开外部浏览器,拨打电话,发送短信,打开微信,支付宝,qq等
1024 0
Flutter 插件url_launcher简介及使用,打开外部浏览器,拨打电话,发送短信,打开微信,支付宝,qq等
|
Web App开发 监控 安全
|
2月前
|
前端开发 JavaScript
前端JS截取url上的参数
文章介绍了两种前端JS获取URL参数的方法:手动截取封装和使用URLSearchParams。
48 0
|
3月前
|
开发框架 前端开发 .NET
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写
Asp.net Webapi 的 Post 方法不能把参数加到 URL 中?试试这样写
|
3月前
|
Java
JAVA 获取 URL 指定参数的值
JAVA 获取 URL 指定参数的值
46 0
|
4月前
|
JavaScript 前端开发 数据格式
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
237 0
|
4月前
|
JavaScript
js 获取并解析 url 中参数的三种方法
js 获取并解析 url 中参数的三种方法
425 0

热门文章

最新文章