我正在使用Express,Node.js和Mongodb創建上傳並顯示圖像文件的網頁。在貓鼬模式下以二進制數據存儲圖像文件並以html格式顯示圖像
我使用模式在mongodb中保存了圖像的二進制文件。
這是我的index.js和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';
,這裏是蒙戈外殼的一部分,我提交的圖像文件,並尋找崗位後,它的像場
"image: {"data:BinData(0,"iVBORw0KGgoAAAANSUhEUE....(I
just cut off the rest of the code.. cuz it was too long)
rkJggg=="),
"contentType" : "image/png" }
所以它看起來像它的成功節省mogngodb圖像文件的二進制數據,
但我的問題是如何顯示的圖像在現在使用二進制數據的網頁上。如何轉換二進制緩衝區數據以創建圖像標籤?
<img src= "data:{{image.contentType}};base64,{{image.data}}">
我嘗試這樣做,但它給了我一個錯誤:
Failed to load resource: net::ERR_INVALID_URL
難道你們,請讓我知道我該如何解決這個問題?我會非常感謝你的幫助:(((
嗨@semih你能告訴我一種方法來直接存儲我的base64圖像字符串在數據庫中,而不是文件路徑? –
好主意,但是當您的Nodejs API位於負載平衡器後面時,通常不是在文件系統上存儲任何內容的好主意。 –