工具用的順手嗎?
你的回饋能幫助我們做得更好
將URL中的特殊字元(如中文、空格)與百分號編碼相互轉換,解決Web開發與數據傳輸中的字元相容問題。
概覽
了解工具能解決的問題、計算或處理邏輯,以及資料邊界。
這項工具把文字或 URI 內容轉成百分號編碼,也能把符合格式的編碼還原。百分號編碼以 % 加上兩位十六進位數表示位元組;例如空格的位元組是 20,可寫成 %20。中文會先依 UTF-8 轉成多個位元組,再逐一表示,因此「你好」會成為 %E4%BD%A0%E5%A5%BD。這是表示方式轉換,不是加密。
輸入框旁的「編碼所有字元」開關實際上用來選擇處理層級,預設開啟:開啟時採用 URI 元件規則,適合單一參數值或路徑片段;關閉時採用完整 URI 規則,會保留網址的結構符號。兩種模式都會保留字母、數字及部分未保留符號,並非把每個字元都改寫成百分號。RFC 3986 說明 URI 的保留字元與百分號編碼;ECMAScript 規範則定義這兩種 URI 編解碼函式的差別與錯誤條件。
單一參數值(預設模式)價格 對比&sort=a+b → %E4%BB%B7%E6%A0%BC%20%E5%B0%8D%E6%AF%94%26sort%3Da%2Bb
完整 URI 模式https://example.com/search?q=你好 world&sort=a+b → https://example.com/search?q=%E4%BD%A0%E5%A5%BD%20world&sort=a+b
完整 URI 模式會保留協定、斜線、問號、等號與連接參數的符號;元件模式則會把這些符號視為資料加以編碼。選擇前先確認手上的內容是「一個值」還是「整條 URI」,比只看字串裡有沒有中文更重要。
網址查詢參數常見兩種相似但不完全相同的處理方式。這個工具的 URI 模式將空格寫成 %20,輸入的加號 + 也會保持為加號(元件模式中會編成 %2B)。HTML 表單常用的 application/x-www-form-urlencoded 則有自己的序列化規則,空格可能寫成 +。WHATWG URL Standard 將這套表單規則獨立定義;因此本工具不是表單欄位序列化器,也不會自動把 + 解讀成空格。
指南
依步驟完成操作,並透過範例核對輸入與結果。
若內容是要放進網址的一個搜尋詞、參數值或路徑片段,維持預設開啟;若貼入的是含有協定、路徑、查詢與片段的完整 URI,且希望保留其分隔符,關閉開關。
原始文字要放入 URI 時選編碼;手上已有 %HH 形式、想閱讀其中的字元時選解碼。模式對編碼與解碼都有效,兩者應依相同層級配對。
輸入後查看即時轉換結果,確認中文、空格與 &、=、+ 等符號符合接收端要求,再複製使用。解碼失敗時,檢查百分號後是否有兩位十六進位數,以及 UTF-8 多位元組內容是否完整。
例如要將「台北 & 高雄」作為一個查詢值,元件模式會把空格和 & 一起編碼,避免 & 被誤認為另一個參數的起點。之後再由你的程式或設定把該值接到既有網址結構中。
情境
查看這項工具在不同工作與生活流程中的用法。
開發或測試時,若搜尋詞含中文、空格、& 或等號,先用元件模式編碼單一值,再交由原本的網址組裝流程放進參數,減少資料符號被當成結構分隔符的情況。
排查紀錄中的百分號字串時,先辨認它是整條 URI 還是 URI 中的一個值,再用相同層級解碼。結果可協助比對可讀內容,但工具不會替你拆出參數名稱和值。
內容編輯或營運人員要保留網址的斜線、問號與參數連接符時,關閉開關後再轉換。完成後仍須回到實際使用環境檢查連結結構與目的地。
問答
集中解答常見疑問與容易混淆的問題。
因為這裡執行的是 URI 編碼;空格轉成加號屬於表單序列化規則。若服務端要求表單格式,應依該端規格處理欄位,不能把兩種格式當成完全相同。
完整 URI 模式會保護代表保留分隔符的編碼,避免解碼後改變 URI 結構。若這些符號本來是單一參數值中的資料,切換到元件模式再解碼。
找出格式不完整的百分號片段,例如 %E,以及被截斷或無法組成有效 UTF-8 字元的連續位元組。修正來源字串後再解碼;工具不會替錯誤資料猜測原文。
不一定。百分號本身若作為資料再次編碼會變成 %25;例如已編碼的 %E4 再編碼會先成為 %25E4。通常應確認目前字串是否已編碼,避免不必要的重複轉換。
須知
使用前了解適用範圍、結果限制與必要提醒。
?、&、= 等結構組合。推薦
查找相關工具、專題與可用的 API 能力。