无法将图片上传到云中
问题描述:
您能否告诉我,当我尝试将图片上传到云中时,我做错了什么?无法将图片上传到云中
app.js 我不需要在服务器上存储图像,所以我把它存储在内存中。 var cloudinary = require('cloudinary'); cloudinary.config({ cloud_name: 'hidden', api_key: 'hidden', api_secret: 'hidden' }); var multer = require('multer'); var storage = multer.memoryStorage() var upload = multer({ storage: storage })
网站形式(玉/哈巴狗) form(action="/?_csrf="+csrfToken method="post" enctype='multipart/form-data') input(type="file" name="avatar") input(type="submit" value="upload")
应用后
app.post('/', upload.single('avatar'), function(req, res, next){
console.log('Should be undefined:', req.file.path); //yes
console.log('Should be the buffer:', req.file.buffer); //yes
cloudinary.uploader.upload(req.file.path, function(result) { console.log(result) });
});
,我得到错误 { error: { message: 'Missing required parameter - file', http_code: 400 } }
答
i find out how (just use Datauri):
var dUri = new Datauri();
dUri.format(path.extname('TEST').toString(), req.file.buffer);
cloudinary.uploader.upload(dUri.content, function (err, result) {
if (err) {
console.log(err);
} else {
console.log(result);
}
});