MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Konwertuj obraz base64 na plik w węźle Js

Edycja:ten kod działał dla mnie. Może błąd pojawi się później.

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);

Jeśli powiedziałeś

console.log(req.body.profile_image) 

zamiast

 console.log(typeof req.body.profile_image)

Przed wydrukowaniem rzuciłby wszystkie dane znajdujące się w req.body.profile_image na ciąg znaków. Możliwe, że po prostu zapomniałeś „typeof” podczas komentowania, ale jeśli nie dodałeś „typeof”, nie możesz być pewien, że zawiera on ciąg. W buforze jest więcej niż jeden konstruktor i może on używać niewłaściwego.

Dla lolza spróbuj:

Buffer.from(String.fromCharCode.apply(null, new Uint16Array(req.body.profile_image)), "base64")

Co zostaje przypisane do req.body.profile_image?

Pierwszym argumentem writeFileSync jest ciąg, więc nie może powodować błędu typu. Czy możesz dokładniej określić, co zawiera req.body.profile_image?

Na marginesie, chociaż myślę, że nie ma to związku z twoim problemem, utworzenie wystąpienia bufora za pomocą słowa kluczowego „nowy” to przestarzałe .Może przy użyciu Buffer.from(...) poprowadzi Cię w kierunku rozwiązania.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Przegląd zarządzania użytkownikami MongoDB

  2. Testy integracji z MongoDB?

  3. Jak mogę uzyskać pierwsze n segmentów dla agregacji i wszystkie inne segmenty połączone w inny segment?

  4. Wywołania Mongoose do geoNear z punktami GeoJSON jako parametry zapytania nie działają

  5. Jak uruchomić surowe polecenia mongodb z pymongo