首頁 >後端開發 >C++ >如何在ASP.NET中實作修改後的Base64 URL編碼和解碼?

如何在ASP.NET中實作修改後的Base64 URL編碼和解碼?

Linda Hamilton
Linda Hamilton原創
2025-01-11 21:46:41960瀏覽

How to Implement Modified Base64 URL Encoding and Decoding in ASP.NET?

ASP.NET 框架:URL 安全的 Base64 編碼和解碼

此技術修改標準 Base64 編碼以建立 URL 友善的字串,消除可能幹擾 URI 模板的填充和字元(如「 」和「/」)。 這是一個 ASP.NET 實作:

<code class="language-csharp">/// <summary>
/// URL-safe Base64 encoding using UTF-8.
/// </summary>
/// <param name="str">The string to encode.</param>
/// <returns>The URL-safe Base64 encoded string.</returns>
public static string UrlSafeBase64Encode(string str)
{
    byte[] encodedBytes = Encoding.UTF8.GetBytes(str);
    return HttpServerUtility.UrlTokenEncode(encodedBytes);
}

/// <summary>
/// URL-safe Base64 decoding using UTF-8.
/// </summary>
/// <param name="str">The URL-safe Base64 encoded string.</param>
/// <returns>The decoded string.</returns>
public static string UrlSafeBase64Decode(string str)
{
    byte[] decodedBytes = HttpServerUtility.UrlTokenDecode(str);
    return Encoding.UTF8.GetString(decodedBytes);
}</code>

要利用這種 URL 安全的 Base64 編碼,只需用上面提供的函數替換現有的 Base64 編碼和解碼方法即可。

重要注意事項:

  • 輸出不嚴格符合標準 Base64,因為 URL 不安全字元被替換。
  • 這與 RFC 4648 base64url 標準不同;根據刪除的填充字元數,填充 ('=') 被替換為 '0'、'1' 或 '2'。

以上是如何在ASP.NET中實作修改後的Base64 URL編碼和解碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn