Mein Node.js-Server hat etwas, das wie folgt aussieht:
app.get("/api/id/:w", function(req, res) {
var data = getIcon(req.params.w);
});
Hier ist data
eine Zeichenfolge, die eine Base64-Darstellung eines PNG-Bildes enthält. Gibt es eine Möglichkeit, wie ich dies an einen Client senden kann, der auf die codierte und als Bild dargestellte Route zugreift (z. B. damit die URL in einem img
-Tag verwendet werden kann)?
Ja, Sie können Ihren base64-String kodieren und als Image an den Client zurückgeben:
server.get("/api/id/:w", function(req, res) {
var data = getIcon(req.params.w);
var img = new Buffer(data, 'base64');
res.writeHead(200, {
'Content-Type': 'image/png',
'Content-Length': img.length
});
res.end(img);
});
Ich musste zuerst ein wenig manipulieren, um meine im richtigen Format zu erhalten, aber das hat gut funktioniert:
var base64Data = data.replace(/^data:image\/png;base64,/, '');