URI Component Encoder
線上對 URI 元件與完整網址進行百分比編碼或解碼
Function:
Plain Input
關於本工具
URI 元件編碼/解碼工具將瀏覽器原生的 encodeURIComponent、decodeURIComponent、encodeURI 和 decodeURI 函式,包裝成方便使用的介面。百分比編碼會將 URL 中不允許的字元,替換為 % 加上兩位代表 UTF-8 位元組的十六進位數字。
encodeURIComponent/decodeURIComponent 會將輸入視為單一元件(查詢值、路徑片段),編碼所有特殊字元。encodeURI/decodeURI 則會將輸入視為完整 URL,保留 ://?=# 等結構性字元,以維持 URL 的結構。
使用方法
- 選擇「編碼」進行百分比編碼,或選擇「解碼」以還原原始內容。
- 選擇函式:單一數值使用 encodeURIComponent,完整 URL 使用 encodeURI。
- 貼上您的輸入內容,或點擊「範例」載入示例。
- 點擊「轉換」,然後複製結果。
使用情境
前端開發者在將查詢字串值附加到 URL 之前對其進行編碼。後端工程師解碼百分比編碼的表單資料以便檢查。QA 工程師在提交錯誤報告前驗證 URL 編碼是否正確。API 整合人員對請求 URL 中的驗證權杖或特殊字元進行編碼。
常見問題
- encodeURI 和 encodeURIComponent 有什麼區別? — encodeURI 用於完整 URL,不會編碼在 URL 層級有效的字元(:/?#&)。encodeURIComponent 用於單一元件,會連同這些結構性字元一併編碼。
- 為什麼空格會變成 %20 而不是 +? — 百分比編碼(%20)是 RFC 3986 定義的標準。+ 表示法是 HTML 表單編碼(application/x-www-form-urlencoded)特有的做法,這些函式並不會使用它。
- 我的資料會被傳送到任何地方嗎? — 不會。所有處理都在瀏覽器中使用 JavaScript 內建函式執行,不會傳送任何資料到伺服器。