URL 編碼解碼使用方法
- 選擇轉換方向:想看懂亂碼網址就選「解碼」,要把文字放進網址就選「編碼」。
- 把網址或文字貼到輸入欄,結果會立即顯示。
- 編碼時,如果只是一個搜尋關鍵字或參數值,請選「單一參數值」;如果是完整網址,請選「整個網址」。
- 在下方的 URL 結構分析 貼上網址,就會把網域、路徑和參數整理成表格。
什麼是 URL 編碼(百分比編碼)?
網址(URL)只能使用英文字母、數字和少數符號。中文、空格或 & 這類特殊字元,必須先轉成 UTF-8 位元組,再把每個位元組寫成「%」加兩位十六進位數字。這就是 URL 編碼,也稱為百分比編碼(Percent-encoding)。
| 原始字元 | 編碼結果 |
|---|---|
| 空格 | %20(查詢字串中也會用 +) |
| & | %26 |
| 中 | %E4%B8%AD(UTF-8 三個位元組) |
| 文 | %E6%96%87 |
常用的中文字在 UTF-8 中佔三個位元組,一個字會變成三組 %XX(共 9 個字元),所以複製中文網址貼出來時,常會變成一長串看不懂的文字。
encodeURIComponent 與 encodeURI 的差別
encodeURIComponent 會把 / ? & = # 等網址結構符號也一併編碼。放入搜尋關鍵字這類單一參數值時應使用它,值裡的 & 才不會被誤認為下一個參數的開頭。
encodeURI 會保留網址結構符號,只編碼中文、空格等字元,適合用來處理已經組好的完整網址。
- 單一參數值:
a&b→a%26b - 整個網址:
https://a.com/?q=中→https://a.com/?q=%E4%B8%AD
中文網址變亂碼時怎麼辦?
在瀏覽器網址列看到的中文網址,貼到 LINE、WhatsApp 或文件裡後,常會變成滿是 % 的長串。這並不代表網址壞了,直接點擊一樣能打開;只有想看懂內容時,才需要用這個工具解碼。
如果解碼後出現 � 之類的亂碼,可能是較舊的網站使用 Big5 等非 UTF-8 編碼產生的網址。另外,如果部分 % 片段被截斷,本工具會先解開能解的部分,其餘保留原樣並提示你。
常見使用情境
- 分享網址:把一長串 % 編碼的網址解碼,確認連結裡的中文關鍵字或商品名稱。
- 網站開發與除錯:檢查 API 請求或表單送出的參數值是否編碼正確。
- 行銷追蹤:用 URL 結構分析拆解網址中的追蹤參數,逐一查看每個參數的值。
- 組合搜尋連結:把含有空格、& 或中文的關鍵字編碼後,安全地接在網址的
?q=後面。
常見問題
為什麼解碼後 + 號變成了空格?
透過網頁表單送出的搜尋字詞,習慣上會把空格轉成 +。如果想保留真正的 + 號,請關閉「將 + 號視為空格」選項。
URL 編碼做了兩次會怎樣?
% 會再被編碼成 %25,變成 %25E4%25B8%25AD 這樣。遇到這種網址,解碼兩次就能還原。
URL 編碼和 Base64 有什麼不同?
URL 編碼只把網址中不能使用的字元改成 %XX,Base64 則是把整份資料改用 64 個字元重新表示。需要 Base64 轉換請使用 Base64 編碼工具。
輸入的網址會被儲存或連線嗎?
不會。轉換與分析都只是在瀏覽器內處理文字,不會連到該網址,也不會傳送到伺服器。
空格應該編碼成 %20 還是 +?
網址的路徑部分要用 %20。搜尋字詞等查詢參數值有時會依網頁表單慣例使用 +,但 %20 同樣會被解讀為空格,所以用 %20 比較保險。
為什麼中文網址解碼後還是亂碼?
網址可能不是用 UTF-8 編碼,例如部分舊網站使用 Big5。本工具以 UTF-8 解碼,這類網址可能無法正確顯示。