HTML URL 学习笔记

一、URL 概述

  1. 定义:统一资源定位符(Uniform Resource Locator,简称 URL),也被称为网址,是在互联网上用于访问资源的一种标准方式。它指示了资源的位置以及浏览器应如何处理该资源。
  2. 功能:URL 主要用于定位万维网上的文档或其他资源,并告知浏览器如何请求这些资源。它是 Web 浏览器从 Web 服务器请求页面的基础。

二、URL 的组成部分

一个标准的 URL 通常由以下几个部分组成:

  1. 协议(Scheme)

    • 定义了用于访问资源的协议,如 httphttpsftp 等。最常见的是 httphttps,其中 https 表示安全的 HTTP 连接。
  2. 主机名(Host)

    • 指定了资源所在的服务器的域名或 IP 地址。例如,在 URL https://www.example.com 中,www.example.com 就是主机名。
  3. 端口号(Port)(可选):

    • 指定了与服务器通信的端口号。HTTP 默认使用端口 80,HTTPS 默认使用端口 443。如果 URL 中没有指定端口号,浏览器将使用相应的默认端口。例如,https://www.example.com:8080 表示使用端口 8080 访问 example.com
  4. 路径(Path)

    • 指定了资源在服务器上的具体位置,包括目录和文件名。例如,在 URL https://www.example.com/path/to/resource 中,/path/to/resource 就是路径。如果省略路径,则表示访问网站的根目录。
  5. 查询字符串(Query String)(可选):

    • 用于传递参数给服务器上的资源。它通常以 ? 开头,后跟一系列键值对。例如,https://www.example.com/search?q=keyword&lang=en 中,q=keyword&lang=en 就是查询字符串。
  6. 片段标识符(Fragment Identifier)(可选):

    • 用于指定资源内部的一个位置,通常用于页面内的导航。它以 # 开头。例如,https://www.example.com/page#section1 中,#section1 就是片段标识符。

三、URL 的字符编码

由于 URL 只能使用 ASCII 字符集通过因特网进行发送,因此对于非 ASCII 字符,需要使用百分号(%)后跟两位十六进制数来表示。这种编码方式称为 URL 编码。例如:

  1. 空格 :在 URL 中,空格不能直接表示,通常使用 +%20 来代替。例如,https://www.example.com/search?q=hello world 可以编码为 https://www.example.com/search?q=hello+worldhttps://www.example.com/search?q=hello%20world
  2. 特殊字符 :其他特殊字符也需要进行 URL 编码。例如,! 编码为 %21# 编码为 %23$ 编码为 %24 等。

四、URL 的使用示例

以下是一些常见的 URL 示例及其说明:

  1. 简单 URL

    • https://www.example.com:访问 example.com 网站的根目录。
    • https://www.example.com/about:访问 example.com 网站的 about 页面。
  2. 带查询字符串的 URL

    • https://www.example.com/search?q=html&lang=zh:在 example.com 网站上搜索关键词 "html",并设置语言为中文。
  3. 带片段标识符的 URL

    • https://www.example.com/page#contact:访问 example.com 网站的 page 页面,并定位到页面中的 contact 部分。
相关推荐
viperrrrrrrrrr736 分钟前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
fen_fen40 分钟前
学习笔记(26):线性代数-张量的降维求和,简单示例
笔记·学习·算法
FakeOccupational1 小时前
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 & 定向转发机制
笔记·分布式·p2p
布伦鸽3 小时前
C# WPF 左右布局实现学习笔记(1)
笔记·学习·c#·wpf
love530love3 小时前
【笔记】旧版MSYS2 环境中 Rust 升级问题及解决过程
开发语言·人工智能·windows·笔记·python·rust·virtualenv
陳麦冬4 小时前
深入理解指针(二)
c语言·学习
黑色的山岗在沉睡4 小时前
《视觉SLAM十四讲》自用笔记 第二讲:SLAM系统概述
笔记
HappyAcmen5 小时前
1.3 古典概型和几何概型
笔记·概率论·学习方法
普宁彭于晏6 小时前
CSS3相关知识点
前端·css·笔记·学习·css3
qq_336411757 小时前
【笔记】Chrome浏览器的性能调试(performance)工具使用和代码优化
前端·chrome·笔记