投稿数 585
公開から 2940

BlobとBase64の違い


Categories: javascript

はじめに…

どっちもバイナリ…くらいの認識でした。 ちゃんと理解しないと..

Blob

Binary Large OBject の略。 要はバイナリ。 バイナリはテキストとか画像とかのおおもとだということです。

Base64

一口にバイナリと言っても、そのデータの形式は様々です。 Aデバイスで使えてもBデバイスで使えるとは限りません。 たとえばAデバイスだけで使える文字が入ってたらだめですよね。 たとえば画像ならbase64で使えない@マークが入っています。 そこで共通の規格を作りました。 それがBase64。

Base64は、データを64種類の印字可能な英数字のみを用いて、それ以外の文字を扱うことの出来ない通信環境にてマルチバイト文字やバイナリデータを扱うためのエンコード方式である。

だ、そうです。

なので バイナリ -> base64にエンコードは どのデバイスでも使えることを確保します。 プログラムにおいてはBase64をデータをインターフェイスにしていることもあるので エンコードが必要な場合があります。

const Blob = "実際にはバイナリデータ";

class バイナリ扱う// 引数はbase64が必要

new バイナリ扱う(Blob); // not working

new バイナリ扱う(エンコードblobToBase64(Blob)); // OK!!!!!!!

こんなかんじ。(かんじです)