Image Send and Save (Socket io)
Budget: €8 – €30 EUR
Hello, i want send a Image with Socket io and save it as Image,
im done with this, but image cannot display as Image.
Can you help me with that?
### ClientSide:
var data = e.originalEvent.target.files[0];
var reader = new FileReader();
var fileName = e.originalEvent.target.files[0].name;
reader.onload = function(evt){
if (data.type.indexOf("image") == 0 && data.size < 400000) {
socket.emit('uploadOwnPic', { userID: value3, picBin: evt.target.result, fileName: fileName, room: value1 });
}
else
{
alert("Bild ist zu groß oder hat falsches Format!");
}
};
reader.readAsDataURL(data);
### Sever Side:
var fileName = data.fileName;
var file = data.picBin;
console.log("Bild hat größe von " + file.length);
var fileNameLength = fileName.length;
//var buf = new Buffer(file, 'base64');
var strneu = fileName.substr(-4 ,fileNameLength);
var imageUrlNew = userID + strneu;
console.log("######################################");
console.log("Image Url -> " + imageUrlNew);
console.log("######################################");
var ext = file.split(';')[0].match(/jpeg|png|gif/)[0];
// strip off the data: url prefix to get just the base64-encoded bytes
var data = file.replace(/^data:image\/\w+;base64,/, "");
var buf = new Buffer(file, 'base64');
fs.writeFileSync('/var/www/vhosts/httpdocs/images/userpics/' + imageUrlNew, buf, function (err,data) {
if (err) {
return console.log(err);
}
im done with this, but image cannot display as Image.
Can you help me with that?
### ClientSide:
var data = e.originalEvent.target.files[0];
var reader = new FileReader();
var fileName = e.originalEvent.target.files[0].name;
reader.onload = function(evt){
if (data.type.indexOf("image") == 0 && data.size < 400000) {
socket.emit('uploadOwnPic', { userID: value3, picBin: evt.target.result, fileName: fileName, room: value1 });
}
else
{
alert("Bild ist zu groß oder hat falsches Format!");
}
};
reader.readAsDataURL(data);
### Sever Side:
var fileName = data.fileName;
var file = data.picBin;
console.log("Bild hat größe von " + file.length);
var fileNameLength = fileName.length;
//var buf = new Buffer(file, 'base64');
var strneu = fileName.substr(-4 ,fileNameLength);
var imageUrlNew = userID + strneu;
console.log("######################################");
console.log("Image Url -> " + imageUrlNew);
console.log("######################################");
var ext = file.split(';')[0].match(/jpeg|png|gif/)[0];
// strip off the data: url prefix to get just the base64-encoded bytes
var data = file.replace(/^data:image\/\w+;base64,/, "");
var buf = new Buffer(file, 'base64');
fs.writeFileSync('/var/www/vhosts/httpdocs/images/userpics/' + imageUrlNew, buf, function (err,data) {
if (err) {
return console.log(err);
}