DoesNode.js有内置的Base64编码吗?
const uploadimage = asyncHandler(async(req, res, next) => { try{ var matches = req.body.base64image.match(/^data:([A-Za-z-+/]+);base64,(.+)$/); response = {}; if(matches.length !== 3){ return new Error('Invalid input string'); }
response.type = matches[1];
response.data = new Buffer(matches[2], 'base64');
let decodedImg = response;
let imageBuffer = descodedImg.data;
let type = decodedImg.type;
let extension = mime.extension(type);
let fileName = "image." + extension;
fs.writeFileSync("uploads" + fileName, imageBuffer, 'utf8');
return res.send({
"status":"success"
})
}catch(e){
return res.send({
"status":"failed",
})
}
});
但此错误显示为
弃用警告:出于安全和可用性问题。请使用Buffer.alloc((、Buffer.allocUnsafe((,或Buffer.from((方法。(使用
node --trace-deprecation ...
显示警告的创建位置(
试试这个:
npm i -S pdf-to-base64
const pdf2base64 = require('pdf-to-base64');
pdf2base64("test/sample.pdf")
.then(
(response) => {
console.log(response); //cGF0aC90by9maWxlLmpwZw==
}
)
.catch(
(error) => {
console.log(error); //Exepection error....
}
)
文件:https://www.npmjs.com/package/pdf-to-base64