Ich verwende Express, Node.js und Mongodb, um die Webseite zu erstellen, die die Bilddatei hochlädt und anzeigt.Speichern Sie Image-Datei in Binärdaten in Mungo-Schema und zeigen Sie Bild in HTML-Formular an
Ich speicherte die Binärdatei in Mongodb mit Schema.
Hier ist mein kleines Stück Code in index.js und db.js ..
var Post = mongoose.Schema({
image: {data: Buffer, contentType: String}
});
var post= new Post({ });
post.image.data=fs.readFileSync(req.file.path);
post.image.contentType='image/png';
und hier der Teil des Mongo Shell ist, nachdem ich Bilddatei vorgelegt und für die Zeit nach durchsucht, und seinem Bildfeld
"image: {"data:BinData(0,"iVBORw0KGgoAAAANSUhEUE....(I
just cut off the rest of the code.. cuz it was too long)
rkJggg=="),
"contentType" : "image/png" }
so schien es, wie es erfolgreich die binären Daten der Bilddatei in mogngodb Speicher ist,
aber mein Problem ist, wie das Bild angezeigt werden auf der Webseite, die jetzt binäre Daten verwendet. Wie konvertiere ich binäre Pufferdaten, um Image-Tags zu erstellen?
<img src= "data:{{image.contentType}};base64,{{image.data}}">
Ich versuchte dies, aber es gibt mir eine Fehlermeldung:
Failed to load resource: net::ERR_INVALID_URL
Könnten Sie Jungs lassen Sie es mich wissen, wie kann ich dieses Problem lösen ?? Ich werde wirklich für Ihre Hilfe zu schätzen wissen: (((
Hey @semih Kannst du mir sagen, wie ich meine Base64-Bildzeichenfolge direkt in db statt im Dateipfad speichern kann? –
Gute Idee, aber wenn Ihre Nodejs-API hinter einem Load Balancer steht, ist es normalerweise keine gute Idee, etwas im Dateisystem zu speichern. –