首頁 > 後端開發 > C++ > 如何在 C# 中解碼編碼的 URL 參數?

如何在 C# 中解碼編碼的 URL 參數?

Barbara Streisand
發布: 2025-01-06 15:20:39
原創
764 人瀏覽過

How to Decode Encoded URL Parameters in C#?

在 C 中解碼編碼的 URL 參數

使用 URL 參數時,經常會遇到編碼字串,以防止特殊字元幹擾資料。本文探討如何使用 C# 解碼此類編碼參數。

以以下URL 為例:

my.aspx?val=%2Fxyz2F
登入後複製

要解碼此編碼參數值,您可以使用以下方法:

Uri.UnescapeDataString()

Uri.UnescapeDataString(string) 方法是用來解碼URL 參數的簡單選項。它將編碼的字串作為輸入並傳回解碼的值。

例如,解碼範例URL 參數:

string decodedUrl = Uri.UnescapeDataString("my.aspx?val=%2Fxyz2F");
登入後複製

HttpUtility.UrlDecode()

An另一種方法是使用HttpUtility.UrlDecode(string) 方法,該方法也會解碼URL參數

string decodedUrl = HttpUtility.UrlDecode("my.aspx?val=%2Fxyz2F");
登入後複製

處理完全編碼的 URL

值得注意的是,某些 URL 參數可能是完全編碼的,這意味著它們包含多層編碼。為了解決這個問題,您可以採用基於循環的方法:

private static string DecodeUrlString(string url) {
    string newUrl;
    while ((newUrl = Uri.UnescapeDataString(url)) != url)
        url = newUrl;
    return newUrl;
}
登入後複製

此方法可確保即使 URL 包含多個層級的編碼,它也會完全解碼。

以上是如何在 C# 中解碼編碼的 URL 參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板