web-dev-qa-db-ja.com

FormDataを使用してbase64でエンコードされた画像をアップロードしますか?

Base64エンコードされた文字列としてjpegがあります。

var image = "/9j/4AAQSkZJRgABAQEAS..."

このjpegをFormDataを使用してサーバーにアップロードしたいと思います。

var data = new FormData();

画像をデータに追加する適切な方法は何ですか?

12
user1031947

画像データは文字列に過ぎないため、次のようにFormDataオブジェクトに追加します。

data.append("image_data", image);

次に、サーバー側でデータベースに直接保存するか、画像に変換してファイルシステムに保存します。 この投稿 が役立つかもしれません。

9
HeadCode

私はこの投稿( データURIをファイルに変換してからFormDataに追加 )が非常に役立つことを発見しました。ファイルがすでにbase64エンコードされた文字列として表されている場合は、最初にそれからBLOB表現を作成する必要があり、その後FormDataの追加を使用できます。

5
Kevin