ASP.NET Framework での URL Safe Base64 エンコーディング/デコーディング
Base64 エンコードは、ネットワーク経由で送信するためにバイナリ データをテキスト形式にエンコードするために一般的に使用されます。ただし、標準の Base64 エンコードには、URI テンプレートや URL に干渉する可能性のある文字 (特に「」と「/」) が含まれています。
この問題を解決するために、URL 専用の Base64 エンコードの修正バージョンが存在します。この変形例では、「 」と「/」がそれぞれ「-」と「_」に置き換えられ、埋め込み文字「=」が省略されます。
ASP.NET フレームワークの URL に Base64 の修正バージョンを実装するには、次のメソッドを使用できます。
デコード:
エンコーディング:
代替:
.NET Framework は、HttpServerUtility クラスを提供します。このクラスには、URL セーフな Base64 エンコードとデコードを処理する UrlTokenEncode メソッドと UrlTokenDecode メソッドが含まれています。
コード:
<code class="language-csharp">// 编码 string base64UrlEncodedText = HttpServerUtility.UrlTokenEncode(Encoding.UTF8.GetBytes(plaintext)); // 解码 string plaintext = Encoding.UTF8.GetString(HttpServerUtility.UrlTokenDecode(base64UrlEncodedText));</code>
注: HttpServerUtility メソッドは、「= パディング文字が「0」、「1」、または「2」に置き換えられる非標準の Base64url 実装を返します。これは、パディングに「=」文字を使用する RFC4648 標準とは異なります。
以上がASP.NET で URL セーフな Base64 エンコーディングとデコーディングを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。