5

スペースの点で最も効率的な URL エンコード方法を探しています。生のバイナリ (base2) は、より小さく、URL に対して安全な base16 で表すことができますが、base64 はさらに効率的です。ただし、通常の base64 エンコーディングは URL セーフではありません....

では、URL に対しても安全な最小のエンコード方法は何ですか?

4

3 に答える 3

3

これが、Base64 URL エンコーディング バリアントの目的です。

+が に変更され-/が に変更されることを除いて、同じ標準の Base64 アルファベットを使用し_ます。

最新の Base64 実装のほとんどは、この代替エンコーディングをサポートします。そうでない場合は、通常、デコードする前に Base64 入力を検索/置換するか、ブラウザに送信する前に出力を検索/置換するだけです。

于 2016-08-28T14:00:24.407 に答える
1

通常の base 64 の代わりに 62 文字表現を使用できます。これにより、YouTube のような URL が得られます: http://www.youtube.com/watch?v=0JD55e5h5JM

文字列をデータベースの数値 ID にマップする必要がある場合は、このページで提供されている PHP 関数を使用できます。

http://bsd-noobz.com/blog/how-to-create-url-shortening-service-using-simple-php

または、数値 ID を短い URL 文字列に直接変換する必要がある場合は、次の URL を参照してください: http://kevin.vanzonneveld.net/techblog/article/create_short_ids_with_php_like_youtube_or_tinyurl/

于 2012-04-11T18:23:42.480 に答える