010tools.comURL 在線編碼解碼工具(010tools 最好用的在線工具集合)
URL 編碼或解碼的結果:
什麼是URL編碼
URL編碼(URL encoding),也稱作百分號編碼(Percent-encoding), 是特定上下文的統一資源定位符 (URL)的編碼機制。 適用於統一資源標識符(URI)的編碼,也用於為"application/x-www-form-urlencoded" MIME準備數據, 因為它用於通過HTTP的請求操作(request)提交HTML表單數據。
URL的字符類型
URI所允許的字符分作保留與未保留。保留字符是那些具有特殊含義的字符,例如:斜線字符用於URL(或URI)不同部分的分界符;未保留字符沒有這些特殊含義。百分號編碼把保留字符表示為特殊字符序列。上述情形隨URI與URI的不同版本規格會有輕微的變化。
! | * | ' | ( | ) | ; | : | @ | & | = | + | $ | , | / | ? | # | [ | ] |
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z | |
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | - | _ | . | ~ |
保留字符的百分號編碼
如果一個保留字符在特定上下文中具有特殊含義(稱作"reserved purpose") , 且URI中必須使用該字符用於其它目的, 那麼該字符必須百分號編碼。百分號編碼一個保留字符,首先需要把該字符的ASCII的值表示為兩個16進制的數字,然後在其前面放置轉義字符("%
"),置入URI中的相應位置。(對於非ASCII字符, 需要轉換為UTF-8字節序, 然後每個字節按照上述方式表示.)
對百分號字符的百分號編碼
由於百分號字符("%")表示百分號編碼字節流的存在, 因此百分號字符應該被編碼為3個字節的序列:"%25",用於URI內部。
任意數據的百分號編碼
大多數URI涉及表示任意數據, 例如 IP地址 或 文件系統 路徑作為URI的成分。
實例
我們要向https://www.010tools.com/api/urlencode發起GET請求,同時要向其傳遞參數input,值為:https://www.010tool.com/.
按照URL的編碼規範,我們需要將值https://www.010tools.com 進行URL編碼,其中包含保留字符: /,故要對: /進行百分號編碼,編碼後數據是:https%3A%2F%2Fwww.010tools.com%2F,最終構造的GET請求鏈接為: https://www.010tools.com/api/urlencode?input=https%3A%2F%2Fwww.010tools.com%2F