Mã hóa URL trong HTML





Mã hóa các địa chỉ URL là việc dịch các ký tự không thể in được hoặc các ký tự với ý nghĩa đặc biệt trong địa chỉ URL thành một đại diện rõ ràng và được chấp nhận bởi hầu hết các máy chủ và trình duyệt. Những ký tự này bao gồm:

  • Các ký tự điều khiển ASCII - Các ký hiệu không in được tiêu biểu sử dụng cho điều khiển tín hiệu ra. Dãy này là một phần của bộ ký tự ISO-Latin và bao gồm toàn bộ nửa trên cùng củabộ ISO-Latin từ 80-FF thập lục phân (từ 128-255 trong hệ thập phân). Một bảng đầy đủ các mã hóa sẽ được cung cấp bên dưới.

  • Các ký tự điều khiển bên ngoài ASCII - Đây là những ký tự ở phần bên ngoài của bộ 128 ký tự ASCII. Dãy này là một phần của bộ ký tự ISO-Latin và bao gồm toàn bộ nửa trên của bộ ISO-Latin từ 80-FF hệ thập lục phân (từ 128-255 trong hệ thập phân). Một bảng đầy đủ sẽ được cung cấp bên dưới.

  • Các ký tự dành riêng - Đây là các ký tự đặc biệt như ký hiệu đồng Đôla, dấu cộng, dấu gạch ngang…. Tất cả các ký tự này có ý nghĩa khác nhau bên trong một địa chỉ URL, vì thế nó cần thiết được mã hóa. Một bảng đầy đủ sẽ được cung cấp bên dưới.

  • Các ký tự không an toàn - Đây là những ký tự như khoảng trống, dấu nhỏ hơn, dấu lớn hơn…. Những ký tự này khả năng có thể không được hiểu trong các địa chỉ URL vì các lý do khác nhau. Những ký tự này thường cũng nên được mã hóa. Một bảng đầy đủ sẽ được cung cấp bên dưới.

Các ký hiệu mã hóa thay thế các ký tự bạn muốn với ba ký tự: một dấu phần trăm và hai chữ số thập lục phân tương ứng với các vị trí của các ký tự trong bộ ký tự ASCII.

Ví dụ

Một trong những các ký tự đặc biệt thường dùng là khoảng trống trắng. Bạn không thể gõ một khoảng trống vào trong một địa chỉ URL một cách trực tiếp. Vị trí khoảng trống trong bộ ký tự là 20 trong hệ thập lục phân. Vì thế bạn có thể sử dụng %20 để thay thế cho khoảng trống khi gửi yêu cầu của bạn tới máy chủ.

http://www.example.com/new%20pricing.jsp

Địa chỉ URL này đúng là trả về một trang có tên "new pricing.jsp" từ trang www.example.com .

Mã hóa các ký tự điều khiển ASCII

Bảng dưới bao gồm mã hóa cho các ký tự từ 00-1F trong hệ thập lục phân (0-31 trong hệ thập phân) và 7F trong hệ thập lục phân ( 127 trong hệ thập phân).

Hệ thập phânGiá trị thập lục phânKý tựMã URL
000 %00
101 %01
202 %02
303 %03
404 %04
505 %05
606 %06
707 %07
808backspace%08
909tab%09
100alinefeed%0a
110b %0b
120c %0c
130dcarriage return%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

Mã hóa các ký tự điều khiển Non-ASCII

Bảng dưới bao gồm mã hóa các ký tự thuộc nửa trên của bộ ISO-Latin từ 80-FF trong hệ thập lục phân (128-255 trong hệ thập phân).

Hệ thập phânGiá trị thập lục phânKý tựMã 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
170aaª%aa
171ab«%ab
172ac¬%ac
173ad­%ad
174ae®%ae
175af¯%af
176b0°%b0
177b1±%b1
178b2²%b2
179b3³%b3
180b4´%b4
181b5µ%b5
182b6%b6
183b7·%b7
184b8¸%b8
185b9¹%b9
186baº%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
208d0Ð%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
221ddÝ%dd
222deÞ%de
223dfß%df
224e0à%e0
225e1á%e1
226e2â%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
240f0ð%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
253fdý%fd
254feþ%fe
255ffÿ%ff

Mã hóa các ký tự dành riêng

Dưới đây là bảng được sử dụng để mã hóa các ký tự dành riêng:

Hệ thập phânGiá trị thập lục phânKý tựMã URL
3624$%24
3826&%26
432b+%2b
442c,%2c
472f/%2f
583a:%3a
593b;%3b
613d=%3d
633f?%3f
6440@%40

Mã hóa các ký tự không an toàn

Dưới đây là bảng được sử dụng để mã hóa các ký tự không an toàn.

Hệ thập phânGiá trị thập lục phânKý tựMã 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

Loạt bài hướng dẫn học lập trình HTML cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint.com

Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.