編集:このコードは私のために働いた。エラーは後で発生する可能性があります。
var fs = require("fs");
var image = "+MZScHeJQ9Cz5dfxnEmIMHWMZyZYnYx8Rrhj0HbtfGUanv5w3UHUyADbiGsKJxeM1yV4uGwBS7cYlAec1w0AX6xg2A1O854UF8OS6PAP1MtzkeFnrNlD41U8XFeGrp1fn3jRMUs8sqS61umSS2rR2NDhppjZ4OvnOWBAq6X+sQNkhKkfZOdYsZOpz8fWIQb6wQ/GchVCgfZko4PMDg1DSumausG6o+2E6wKLLjKReUaHEQXKJV8h85XEKN4p/WEBvTHmmJ/IN178YJVgrGmfOScAuBPp+sggGA7/wC1kgbDiacbGABOcCLHVRpMuBQh5Xn4xqARF03pwkJT23LhxGLiSGp8mCVWDrzPf3iwp4C3nDSg2VUfNwgDvm6vrIiFJvp8ZHIdjoFx8BX0OH0+8TVii3GAKKc2kjz7dYqUCdsuMOm2hrr+h//Z";
var bitmap = new Buffer(image, 'base64');
fs.writeFileSync("images/example.jpg", bitmap);
あなたが言った場合
console.log(req.body.profile_image)
ではなく
console.log(typeof req.body.profile_image)
印刷する前に、req.body.profile_imageにあるすべてのデータを文字列にキャストします。コメントするときに「typeof」を忘れた可能性がありますが、「typeof」を追加しなかった場合は、文字列が含まれていることを確認できません。 Bufferには複数のコンストラクターがあり、間違ったコンストラクターを使用している可能性があります。
lolzを試してみてください:
Buffer.from(String.fromCharCode.apply(null, new Uint16Array(req.body.profile_image)), "base64")
req.body.profile_imageには何が割り当てられますか?
writeFileSyncの最初の引数は文字列であるため、型エラーの原因にはなりません。 req.body.profile_imageに何が含まれているのか具体的に教えてください。
ちなみに、これはあなたの問題とは無関係だと思いますが、「new」キーワードを使用してバッファをインスタンス化することは、非推奨
。多分