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编码,字符编码
|