画像のBase64エンコード、デコードを Node.js(v4.4.4) で試した際のメモです。
以下の「1」、「3」について Node.js で書いてみました。
- xxx.png を一旦エンコードしてDBなどに保存。
- DBなどから文字列を取得し、encoded.pngとして保存
- 再度デコードして保存。pngとして表示できる
エンコード
encode.js
var fs = require('fs');
fs.readFile('xxx.png', 'base64', function(err, data) {
if (err) throw err;
// どこかに文字列として保存
console.log(data);
});
デコード
decode.js
var fs = require('fs');
fs.readFile('encoded.png', 'utf8', function(err, data) {
var decode = new Buffer(data,'base64');
fs.writeFile('xxx.png', decode, function(err) {
console.log(err);
});
});