HTML5,URL编码,字符编码URL 编码 URL 编码就是将 URLs 中不宜打印的字符或者具有特殊意义的字符转换为 Web 浏览器和服务器明白且普遍接受的表示法。 这些字符包括: ASCII 控制字符 - 不宜打印的字符通常用于输出控制。字符范围是十六进制的 00-1F(十进制的 0-31)和 7F(十进制的 127)。下面提供了完整的编码表。 非 ASCII 控制字符 - 这些字符超出了 128 个 ASCII 字符集的范围。这个范围是 ISO-拉丁字符集的一部分以及包含整个十六进制的 ISO-拉丁字符集 00-FF (十进制的 128-255)的“前半部分”。下面提供了完整的编码表。 保留字符 - 诸如美元符号,和号,加号,通用符号,正斜杠,冒号,分好,等号,问号以及 “at”这类符号。所有这些符号在 URL 内都有不同的意义,因此需要编码。下面提供了完整的编码表。 不安全字符 - 包括空格,问号,小于符号,大于符号,磅字符,百分比符号,大括号左边部分,大括号右边部分,管道符,反斜杠,插入符号,波浪线。左方括号,右方括号,沉音符。出于某些原因,这些字符出现在 URLs 中存在被误解的可能性。这些字符也应该始终被编码。下面提供了完整的编码表。 编码表示法需要三个字符替换期望的字符:一个百分号,两个在 ASCII 字符集中表示字符位置的十六进制数字、 示例 最常见的特殊字符之一便是空格。我们不能在 URL 中直接输入一个空格。空格在字符集中就是十六进制的 20。因此请求服务器时可以使用 %20 表示空格。
http://www.example.com/new%20pricing.html 这个 URL 实际上是从 www.example.com 检索一个名为 new pricing.html 的文档。ASCII 控制字符编码 包括十六进制的 00-1F(十进制的 0-31)和 7F(十进制的 127)字符码。
| 十进制格式 | 十六进制值 | 字符 | URL 编码 | | 0 | 00 | | %00 | | 1 | 01 | | %01 | | 2 | 02 | | %02 | | 3 | 03 | | %03 | | 4 | 04 | | %04 | | 5 | 05 | | %05 | | 6 | 06 | | %06 | | 7 | 07 | | %07 | | 8 | 08 | 退格符 | %08 | | 9 | 09 | tab | %09 | | 10 | 0a | 换行符 | %0a | | 11 | 0b | | %0b | | 12 | 0c | | %0c | | 13 | 0d | 回车符 | %0d | | 14 | 0e | | %0e | | 15 | 0f | | %0f | | 16 | 10 | | %10 | | 17 | 11 | | %11 | | 18 | 12 | | %12 | | 19 | 13 | | %13 | | 20 | 14 | | %14 | | 21 | 15 | | %15 | | 22 | 16 | | %16 | | 23 | 17 | | %17 | | 24 | 18 | | %18 | | 25 | 19 | | %19 | | 26 | 1a | | %1a | | 27 | 1b | | %1b | | 28 | 1c | | %1c | | 29 | 1d | | %1d | | 30 | 1e | | %1e | | 31 | 1f | | %1f | | 127 | 7f | | %7f | 非 ASCII 控制字符编码 包括整个十六进制的 ISO-拉丁字符集 80-FF(十进制的 128-255)编码的“前半部分”。
| 十进制格式 | 十六进制值 | 字符 | URL 编码 | | 128 | 80 | € | %80 | | 129 | 81 | ? | %81 | | 130 | 82 | ? | %82 | | 131 | 83 | ? | %83 | | 132 | 84 | ? | %84 | | 133 | 85 | … | %85 | | 134 | 86 | ? | %86 | | 135 | 87 | ? | %87 | | 136 | 88 | ? | %88 | | 137 | 89 | ‰ | %89 | | 138 | 8a | ? | %8a | | 139 | 8b | ? | %8b | | 140 | 8c | ? | %8c | | 141 | 8d | ? | %8d | | 142 | 8e | ? | %8e | | 143 | 8f | ? | %8f | | 144 | 90 | ? | %90 | | 145 | 91 | ‘ | %91 | | 146 | 92 | ’ | %92 | | 147 | 93 | “ | %93 | | 148 | 94 | ” | %94 | | 149 | 95 | ? | %95 | | 150 | 96 | – | %96 | | 151 | 97 | — | %97 | | 152 | 98 | ? | %98 | | 153 | 99 | ? | %99 | | 154 | 9a | ? | %9a | | 155 | 9b | ? | %9b | | 156 | 9c | ? | %9c | | 157 | 9d | ? | %9d | | 158 | 9e | ? | %9e | | 159 | 9f | ? | %9f | | 160 | a0 | | %a0 | | 161 | a1 | ? | %a1 | | 162 | a2 | ¢ | %a2 | | 163 | a3 | £ | %a3 | | 164 | a4 | ¤ | %a4 | | 165 | a5 | ¥ | %a5 | | 166 | a6 | | | %a6 | | 167 | a7 | § | %a7 | | 168 | a8 | ¨ | %a8 | | 169 | a9 | ? | %a9 | | 170 | aa | a | %aa | | 171 | ab | ? | %ab | | 172 | ac | ? | %ac | | 173 | ad | - | %ad | | 174 | ae | ? | %ae | | 175 | af | ˉ | %af | | 176 | b0 | ° | %b0 | | 177 | b1 | ± | %b1 | | 178 | b2 | 2 | %b2 | | 179 | b3 | 3 | %b3 | | 180 | b4 | ′ | %b4 | | 181 | b5 | μ | %b5 | | 182 | b6 | ? | %b6 | | 183 | b7 | · | %b7 | | 184 | b8 | ? | %b8 | | 185 | b9 | 1 | %b9 | | 186 | ba | o | %ba | | 187 | bb | ? | %bb | | 188 | bc | ? | %bc | | 189 | bd | ? | %bd | | 190 | be | ? | %be | | 191 | bf | ? | %bf | | 192 | c0 | à | %c0 | | 193 | c1 | á | %c1 | | 194 | c2 | ? | %c2 | | 195 | c3 | ? | %c3 | | 196 | c4 | ? | %c4 | | 197 | c5 | ? | %c5 | | 198 | c6 | ? | %v6 | | 199 | c7 | ? | %c7 | | 200 | c8 | è | %c8 | | 201 | c9 | é | %c9 | | 202 | ca | ê | %ca | | 203 | cb | ? | %cb | | 204 | cc | ì | %cc | | 205 | cd | í | %cd | | 206 | ce | ? | %ce | | 207 | cf | ? | %cf | | 208 | d0 | D | %d0 | | 209 | d1 | ? | %d1 | | 210 | d2 | ò | %d2 | | 211 | d3 | ó | %d3 | | 212 | d4 | ? | %d4 | | 213 | d5 | ? | %d5 | | 214 | d6 | ? | %d6 | | 215 | d7 | × | %d7 | | 216 | d8 | ? | %d8 | | 217 | d9 | ù | %d9 | | 218 | da | ú | %da | | 219 | db | ? | %db | | 220 | dc | ü | %dc | | 221 | dd | Y | %dd | | 222 | de | T | %de | | 223 | df | ? | %df | | 224 | e0 | à | %e0 | | 225 | e1 | á | %e1 | | 226 | e2 | a | %e2 | | 227 | e3 | ? | %e3 | | 228 | e4 | ? | %e4 | | 229 | e5 | ? | %e5 | | 230 | e6 | ? | %e6 | | 231 | e7 | ? | %e7 | | 232 | e8 | è | %e8 | | 233 | e9 | é | %e9 | | 234 | ea | ê | %ea | | 235 | eb | ? | %eb | | 236 | ec | ì | %ec | | 237 | ed | í | %ed | | 238 | ee | ? | %ee | | 239 | ef | ? | %ef | | 240 | f0 | e | %f0 | | 241 | f1 | ? | %f1 | | 242 | f2 | ò | %f2 | | 243 | f3 | ó | %f3 | | 244 | f4 | ? | %f4 | | 245 | f5 | ? | %f5 | | 246 | f6 | ? | %f6 | | 247 | f7 | ÷ | %f7 | | 248 | f8 | ? | %f8 | | 249 | f9 | ù | %f9 | | 250 | fa | ú | %fa | | 251 | fb | ? | %fb | | 252 | fc | ü | %fc | | 253 | fd | y | %fd | | 254 | fe | t | %fe | | 255 | ff | ? | %ff | 保留字符编码 下表用于编码保留字符。
| 十进制格式 | 十六进制值 | 字符 | URL 编码 | | 36 | 24 | $ | %24 | | 38 | 26 | & | %26 | | 43 | 2b | + | %2b | | 44 | 2c | , | %2c | | 47 | 2f | / | %2f | | 58 | 3a | : | %3a | | 59 | 3b | ; | %3b | | 61 | 3d | = | %3d | | 63 | 3f | ? | %3f | | 64 | 40 | @ | %40 | 不安全字符编码 下表用于编码不安全字符。
| 十进制格式 | 十六进制值 | 字符 | URL 编码 | | 32 | 20 | space | %20 | | 34 | 22 | " | %22 | | 60 | 3c | < | %3c | | 62 | 3e | > | %3e | | 35 | 23 | # | %23 | | 37 | 25 | % | %25 | | 123 | 7b | { | %7b | | 125 | 7d | } | %7d | | 124 | 7c | | | %7c | | 92 | 5c | / | %5c | | 94 | 5e | ^ | %5e | | 126 | 7e | ~ | %7e | | 91 | 5b | [ | %5b | | 93 | 5d | ] | %5d | | 96 | 60 | ` | %60 | 字符编码字符编码就是将字节转换为字符的一种方法。要验证或者显示一个 HTML 文档,程序必须选择一个字符编码。HTML5 作者有三种方式设置字符编码: HTTP Content-Type 头: 如果你在编写 cgi 程序或者类似的程序,那么可以使用 HTTP Content-Type 头设置任意字符编码: 下面是一个简单的例子: XML/HTML Code复制内容到剪贴板 - print "Content-Type: text/html; charset=utf-8/r/n";
<meta> 元素: 可以使用带有 charset 属性的 <meta> 元素指定 HTML5 文档前 512 个字节的编码: 下面是简化的例子: 尽管这种语法是被允许的,但上述语法需要使用 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 替换。 Unicode 字节顺序标记(BOM) 一个字节顺序标记(BOM)由数据流开头的 U+FEFF 字符码组成,它可以用作定义字节顺序和编码形式的签名,主要是未标记的明文文件。 许多 Windows 程序(包括 Windows 记事本)都会在保存为 UTF-8 的任意文档开头添加 0xEF, 0xBB, 0xBF。这就是 Unicode 字节顺序标记(BOM)的 UTF-8 编码,通常被称为 UTF-8 BOM,尽管它和字节顺序没有关系。 对于 HTML5 文档,我们可以在文件的开头使用 Unicode 字节顺序标记(BOM)字符。这个字符为使用的编码提供了签名。 HTML5,URL编码,字符编码
|