Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Melaksanakan Pengekodan dan Penyahkodan URL Base64 yang Diubahsuai dalam ASP.NET?

Bagaimana untuk Melaksanakan Pengekodan dan Penyahkodan URL Base64 yang Diubahsuai dalam ASP.NET?

Linda Hamilton
Linda Hamiltonasal
2025-01-11 21:46:411073semak imbas

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

Rangka Kerja ASP.NET: Pengekodan dan Penyahkodan Base64 Selamat-URL

Teknik ini mengubah suai pengekodan Base64 standard untuk mencipta rentetan mesra URL, menghapuskan padding dan aksara seperti ' ' dan '/' yang boleh mengganggu templat URI. Berikut ialah pelaksanaan 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>

Untuk menggunakan pengekodan Base64 yang selamat URL ini, cuma gantikan kaedah pengekodan dan penyahkodan Base64 anda yang sedia ada dengan fungsi yang disediakan di atas.

Pertimbangan Penting:

  • Output tidak mematuhi Base64 standard, kerana aksara tidak selamat URL digantikan.
  • Ini berbeza daripada standard RFC 4648 base64url; padding ('=') digantikan dengan '0', '1' atau '2' berdasarkan bilangan aksara padding yang dialih keluar.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pengekodan dan Penyahkodan URL Base64 yang Diubahsuai dalam ASP.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn