comment envoyer l'image à un serveur http.post en javascript et en magasin en base64 dans mongodb

J'ai du mal à entrer dans les requêtes http sur le côté client de stocker des images sur le côté serveur à l'aide de mongodb. J'apprécie beaucoup aider. J'ai besoin d'un exemple simple de la façon dont j'ai ajouter un fichier image sous forme de données dans une requête http post comme XMLhttprequest. Permet de dire, je sais que l'url de la servermethod. La source de l'image est définie dans

imgsrc

un nom de fichier est stocké dans

name

J'ai ce guichet:

var http = new XMLHttpRequest();
httpPost.onreadystatechange = function(err) {
        if (httpPost.readyState == 4 && httpPost.status == 200){
            console.log(httpPost.responseText);
        } else {
            console.log(err);
        }
    }
var  path = "http://127.0.0.1:8000/uploadImage/"+name;
httpPost.open("POST", path, true);
//I guess I have to add the imagedata into the httpPost here, but i dont know how
httpPost.send(null);

Puis sur le server-side sur le chemin, la méthode suivante sera appelée, et je veux stocker l'url de l'image à l'encodage base64 dans mongodb. Comment puis-je accéder à l'image de la httpPost?

function postNewImageType(req, res, next){
    var newImageTypeData = {
         name: req.params.name,
         image: "placeholder.png"
    }
    var data = //how to access the image?
    var imageBuffer = decodeBase64Image(data);
    fs.writeFile(cfg.imageFolger+newImageTypeData._id+'.jpeg', imageBuffer.data, function(err){
        if (err) return new Error(err);
        newImageTypeData.set({image:newImageTypeData._id+'.jpeg'});
        var image = new ImageType(newImageData);

    });
    imagetype.save(function (err) {
        if (error) {return next(new restify.InvalidArgumentError(JSON.stringify(error.errors)));}
        else { res.send(201, imagetype);}
    });   
}

OriginalL'auteur MojioMS | 2016-01-24