💱

Base64 について調べてみた

に公開

JSを触っていると多々、画像のバイナリについて扱うケースがある。
その度に直面していた"Base64"についてほんの少し調べたのでまとめることにしてみた

Base64 とは何か?

バイナリデータをテキストデータにするために変換方法の一つである
可逆変換であり
バイナリ → Base64エンコードテキストデータ
Base64エンコードテキストデータ → バイナリ
の両方向からの変換が可能である

Base64 の用途は?

MIME による電子メールや XML における複合型データの格納など、多くのアプリケーションで幅広く使われている

Base64 はなぜ必要か?

テキストデータしか扱えない媒体上(Basic認証など)ではバイナリデータを直接、転送・格納できないのでテキストデータにする必要がある

また、HTTPリクエストのContent-type による制約上からバイナリをテキスト(Base64)にして送ることもある

所感

テキストデータしか扱えない媒体というのはほとんどないんじゃないかと思ったり。
ただ、文字列の方が取り回しがしやすいので
とりあえず「Base64エンコードしとくか」ぐらいのノリでやっている。

Discussion