ホームページ >バックエンド開発 >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 Framework: 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 エンコードおよびデコード メソッドを上記の関数に置き換えるだけです。

重要な考慮事項:

  • URL で安全でない文字が置換されるため、出力は標準 Base64 に厳密に準拠していません。
  • これは、RFC 4648 Base64url 標準とは異なります。パディング ('=') は、削除されたパディング文字の数に基づいて、'0'、'1'、または '2' に置き換えられます。

以上がASP.NET で変更された Base64 URL エンコーディングとデコーディングを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。