2017-03-14 1 views
0

Ich habe eine Zeichenfolge URI-Daten, die wie folgt aussieht:Wie konvertiert man base64-kodierte URI-Daten in eine Datei * serverseitig *?

data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2w..... and so on 

Ich brauche diese auf dem Server ein jpg zu speichern und nur mit Javascript. Als letzten Ausweg könnte ich den Client verwenden, um dies auf eine Leinwand zu schreiben und dann das Bild von dort zu lesen ... aber ich würde es wirklich gerne auf dem Server machen können. Aus irgendeinem Grund erweist sich dies in der Tat als sehr kompliziert.

Ideen?

+0

Ich verstehe nicht ... ist das eine einmalige Sache? Wie bekommst du die Base64 zum Server? – JDB

+0

Bitte teilen Sie Ihren Code, was Sie erwarten, und was es tatsächlich tut, einschließlich aller relevanten Fehler oder Protokolle. – jcaron

+1

senden Sie dem Server die Zeichenfolge, behalten Sie den Text rechts vom Komma, un-base64, und speichern Sie. – dandavis

Antwort

1

Danke für die Tipps, alle! Hier ist das Bit Code, der schließlich den Trick gemacht hat:

var fs = require("fs"); 
    var strippedPhotoUri = imageData.substring("data:image/jpeg;base64,".length); 
    var buf = new Buffer(strippedPhotoUri, "base64"); 
    fs.writeFileSync(filename, buf, "base64", function(err) { 
     if (err) { 
      console.error("error: " + err); 
     } 
    }); 
Verwandte Themen