ロード時間を最適化するために、作業中のサイトに base64 でエンコードされた画像を使用することを考えています。
とにかく、始める前に疑問に思っていたのは、これを行うことの利点と欠点は何ですか?
今のところデメリットは見当たりませんが、あまり使わない技であることに気付き、見落としはなかったのではないかと思います。
件名をグーグルで調べた後、明確なものが見つからなかったので、ここで質問することにしました。
非常に小さな画像にのみ役立ちます。Base64 でエンコードされたファイルは、元のファイルよりも大きくなります。利点は、別の接続を開いてサーバーに画像の HTTP 要求を行う必要がないことです。この利点はすぐに失われるため、非常に小さな個々の画像が多数ある場合にのみ利点があります。
MIME準拠のBase64でエンコードされたバイナリデータの実際の長さは、通常、元のデータ長の約137%ですが、非常に短いメッセージの場合、ヘッダーのオーバーヘッドのためにオーバーヘッドがはるかに高くなる可能性があります。非常に大まかに言えば、Base64でエンコードされたバイナリデータの最終的なサイズは、元のデータサイズの1.37倍+ 814バイト(ヘッダーの場合)に等しくなります。
つまり、デコードされたデータのサイズは、次の式で概算できます。
bytes = (string_length(encoded_string) - 814) / 1.37
ソース: http: //en.wikipedia.org/wiki/Base64#MIME
以下のような欠点のいくつかは、この投稿ですでに言及されています。ハードファイルにリンクするよりも、Webサイトにインライン/base64画像を使用する方がどれくらい速いですか。