溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何整理HTML5中支持的URL編碼與字符編碼

發(fā)布時間:2021-09-15 17:08:17 來源:億速云 閱讀:132 作者:柒染 欄目:web開發(fā)

本篇文章給大家分享的是有關(guān)如何整理HTML5中支持的URL編碼與字符編碼,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

URL 編碼
URL 編碼就是將 URLs 中不宜打印的字符或者具有特殊意義的字符轉(zhuǎn)換為 Web 瀏覽器和服務(wù)器明白且普遍接受的表示法。 這些字符包括:

ASCII 控制字符 - 不宜打印的字符通常用于輸出控制。字符范圍是十六進(jìn)制的 00-1F(十進(jìn)制的 0-31)和 7F(十進(jìn)制的 127)。下面提供了完整的編碼表。

非 ASCII 控制字符 - 這些字符超出了 128 個 ASCII 字符集的范圍。這個范圍是 ISO-拉丁字符集的一部分以及包含整個十六進(jìn)制的 ISO-拉丁字符集 00-FF (十進(jìn)制的 128-255)的“前半部分”。下面提供了完整的編碼表。

保留字符 - 諸如美元符號,和號,加號,通用符號,正斜杠,冒號,分好,等號,問號以及 “at”這類符號。所有這些符號在 URL 內(nèi)都有不同的意義,因此需要編碼。下面提供了完整的編碼表。

不安全字符 - 包括空格,問號,小于符號,大于符號,磅字符,百分比符號,大括號左邊部分,大括號右邊部分,管道符,反斜杠,插入符號,波浪線。左方括號,右方括號,沉音符。出于某些原因,這些字符出現(xiàn)在 URLs 中存在被誤解的可能性。這些字符也應(yīng)該始終被編碼。下面提供了完整的編碼表。
編碼表示法需要三個字符替換期望的字符:一個百分號,兩個在 ASCII 字符集中表示字符位置的十六進(jìn)制數(shù)字、

示例
最常見的特殊字符之一便是空格。我們不能在 URL 中直接輸入一個空格??崭裨谧址芯褪鞘M(jìn)制的 20。因此請求服務(wù)器時可以使用 %20 表示空格。

這個 URL 實際上是從 www.example.com 檢索一個名為 new pricing.html 的文檔。

ASCII 控制字符編碼
包括十六進(jìn)制的 00-1F(十進(jìn)制的 0-31)和 7F(十進(jìn)制的 127)字符碼。

十進(jìn)制格式十六進(jìn)制值字符URL 編碼
000
%00
101
%01
202
%02
303
%03
404
%04
505
%05
606
%06
707
%07
808退格符%08
909tab%09
100a換行符%0a
110b
%0b
120c
%0c
130d回車符%0d
140e
%0e
150f
%0f
1610
%10
1711
%11
1812
%12
1913
%13
2014
%14
2115
%15
2216
%16
2317
%17
2418
%18
2519
%19
261a
%1a
271b
%1b
281c
%1c
291d
%1d
301e
%1e
311f
%1f
1277f
%7f


非 ASCII 控制字符編碼
包括整個十六進(jìn)制的 ISO-拉丁字符集 80-FF(十進(jìn)制的 128-255)編碼的“前半部分”。

十進(jìn)制格式十六進(jìn)制值字符URL 編碼
12880€%80
12981?%81
13082?%82
13183?%83
13284?%84
13385…%85
13486?%86
13587?%87
13688?%88
13789‰%89
1388a?%8a
1398b?%8b
1408c?%8c
1418d?%8d
1428e?%8e
1438f?%8f
14490?%90
14591‘%91
14692’%92
14793%93
14894%94
14995?%95
15096–%96
15197—%97
15298?%98
15399?%99
1549a?%9a
1559b?%9b
1569c?%9c
1579d?%9d
1589e?%9e
1599f?%9f
160a0
%a0
161a1?%a1
162a2%a2
163a3%a3
164a4¤%a4
165a5%a5
166a6|%a6
167a7§%a7
168a8¨%a8
169a9?%a9
170aaa%aa
171ab?%ab
172ac?%ac
173ad-%ad
174ae?%ae
175afˉ%af
176b0°%b0
177b1±%b1
178b22%b2
179b33%b3
180b4′%b4
181b5μ%b5
182b6?%b6
183b7·%b7
184b8?%b8
185b91%b9
186bao%ba
187bb?%bb
188bc?%bc
189bd?%bd
190be?%be
191bf?%bf
192c0à%c0
193c1á%c1
194c2?%c2
195c3?%c3
196c4?%c4
197c5?%c5
198c6?%v6
199c7?%c7
200c8è%c8
201c9é%c9
202caê%ca
203cb?%cb
204ccì%cc
205cdí%cd
206ce?%ce
207cf?%cf
208d0D%d0
209d1?%d1
210d2ò%d2
211d3ó%d3
212d4?%d4
213d5?%d5
214d6?%d6
215d7×%d7
216d8?%d8
217d9ù%d9
218daú%da
219db?%db
220dcü%dc
221ddY%dd
222deT%de
223df?%df
224e0à%e0
225e1á%e1
226e2a%e2
227e3?%e3
228e4?%e4
229e5?%e5
230e6?%e6
231e7?%e7
232e8è%e8
233e9é%e9
234eaê%ea
235eb?%eb
236ecì%ec
237edí%ed
238ee?%ee
239ef?%ef
240f0e%f0
241f1?%f1
242f2ò%f2
243f3ó%f3
244f4?%f4
245f5?%f5
246f6?%f6
247f7÷%f7
248f8?%f8
249f9ù%f9
250faú%fa
251fb?%fb
252fcü%fc
253fdy%fd
254fet%fe
255ff?%ff


保留字符編碼
下表用于編碼保留字符。

十進(jìn)制格式十六進(jìn)制值字符URL 編碼
3624$%24
3826&%26
432b+%2b
442c,%2c
472f/%2f
583a:%3a
593b;%3b
613d=%3d
633f?%3f
6440@%40


不安全字符編碼
下表用于編碼不安全字符。

十進(jìn)制格式十六進(jìn)制值字符URL 編碼
3220space%20
3422"%22
603c<%3c
623e>%3e
3523#%23
3725%%25
1237b{%7b
1257d}%7d
1247c|%7c
925c\%5c
945e^%5e
1267e~%7e
915b[%5b
935d]%5d
9660`%60


字符編碼

字符編碼就是將字節(jié)轉(zhuǎn)換為字符的一種方法。要驗證或者顯示一個 HTML 文檔,程序必須選擇一個字符編碼。HTML5 作者有三種方式設(shè)置字符編碼:

HTTP Content-Type 頭:
如果你在編寫 cgi 程序或者類似的程序,那么可以使用 HTTP Content-Type 頭設(shè)置任意字符編碼:

下面是一個簡單的例子:

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1. print "Content-Type: text/html; charset=utf-8\r\n";  

<meta> 元素:
可以使用帶有 charset 屬性的 <meta> 元素指定 HTML5 文檔前 512 個字節(jié)的編碼:

下面是簡化的例子:

XML/HTML Code復(fù)制內(nèi)容到剪貼板

  1. <meta charset="UTF-8">  

盡管這種語法是被允許的,但上述語法需要使用 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 替換。

Unicode 字節(jié)順序標(biāo)記(BOM)
一個字節(jié)順序標(biāo)記(BOM)由數(shù)據(jù)流開頭的 U+FEFF 字符碼組成,它可以用作定義字節(jié)順序和編碼形式的簽名,主要是未標(biāo)記的明文文件。

許多 Windows 程序(包括 Windows 記事本)都會在保存為 UTF-8 的任意文檔開頭添加 0xEF, 0xBB, 0xBF。這就是 Unicode 字節(jié)順序標(biāo)記(BOM)的 UTF-8 編碼,通常被稱為 UTF-8 BOM,盡管它和字節(jié)順序沒有關(guān)系。

對于 HTML5 文檔,我們可以在文件的開頭使用 Unicode 字節(jié)順序標(biāo)記(BOM)字符。這個字符為使用的編碼提供了簽名。

以上就是如何整理HTML5中支持的URL編碼與字符編碼,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI