2017-12-11 20 views
1

우편 배달부를 통해 form-data을 사용하여 이미지를 업로드하려고합니다. cloudinary multer-storage-cloudinary이라는 npm 패키지도 사용하고 있습니다. 그러나 문제가 있습니다. 여기 내 코드는 다음과 같습니다.Multer Cloudinary NodeJs

cloudinary.config({ 
    cloud_name: 'ax850', 
    api_key: config.CLOUDINARY_API_KEY, 
    api_secret:config.CLOUDINARY_API_SECRET_KEY 
}); 

let storage = cloudinaryStorage({ 
    cloudinary: cloudinary, 
    folder: '/Memory', 
    allowedFormats: ['jpg', 'png'], 
    filename: function (req, file, cb) { 
     cb(undefined, 'testing'); 
    } 
}); 

let parser = multer({ storage: storage }); 
app.post('/upload', parser.array('images', 10), function (req, res) { 
    console.log(req.files); 
}); 

충돌이 거의 발생하지 않고 오류가 없습니다. 내 구름에 /Memory 폴더가 있습니다. 아이디어가 있으십니까?

답변

0

다음 구현하는 시도 할 수 있습니다 :

기능에는 processFile (전자) {

var f = document.getElementById('f');  
    var file = f.files[0]; 
    var formdata = new FormData(); 

    formdata.append('file', file); 
    formdata.append('cloud_name', '<cloud_name>'); 
    formdata.append('resource_type', 'image'); 

    var xhr = new XMLHttpRequest(); 
    xhr.open('POST', "https://api.cloudinary.com/v1_1/<cloud_name>/image/upload",true); 


    xhr.onload = function() { 
    // do something to response 
     console.log(this.responseText); 
    }; 

    xhr.send(formdata);  
}