Meteor 和 Cloudinary - 回调未触发
Meteor and Cloudinary - Callback not firing
正在尝试将 Cloudinary 添加到我的 Meteor 应用程序。
图片未进入 Cloudinary 媒体库,上传函数回调未触发。我知道之前出现过问题,但我所做的似乎无济于事:
https://github.com/Lepozepo/cloudinary/issues/21
Template.commentSubmit.events({
'submit form': function(e, template) {
e.preventDefault();
var image = Session.get('photo'); // get image from mdg:camera
//console.log(image);
Cloudinary.upload(image, function(err, res) {
if (err){
console.log("Error: " + err);
return;
}
console.log("Success: " + res);
});
// code adding comment and image to mongodb
});
服务器:
Cloudinary.config({
cloud_name: '****',
api_key: '****',
api_secret: '*****'
});
客户:
$.cloudinary.config({
cloud_name: "******"
});
如果我手动将图像上传到 Cloudinary 仪表板,它显示图像没有问题。使用最新版本的 Meteor 和 lepozepo:cloudinary
感谢任何和所有帮助/建议! :)
更新 - 让它与此一起工作:
var image = Session.get('photo');
if(image){ // check if post also includes image
var files = [];
files.push(dataURLtoBlob(image));
let options = {
folder: "app",
image_metadata: true
};
var imageURL = ""; // loading gif
Cloudinary.upload(files, options, function(err, res) {
if (err){
console.log("Error: " + err);
return;
}
//console.log(res);
imageURL = res.secure_url;
//console.log(imageURL);
});
}
i 运行 进入同一个问题,"solved" 通过使用较早版本的软件包。我的 .meteor/packages 现在有这个:
lepozepo:cloudinary@=4.2.2
更新:
我没有使用 mdg:camera 来获取数据,只是一个简单的输入。在桌面上,它显示文件浏览器。在 iOS 上,它显示 "Take picture / Choose from library" 面板。 (它也适用于 Android)。
代码如下所示:
html:
<input type="file" id="upload-image" class="file_bag" accept="image/*">
js:
'change #upload-image': function(event, template) {
event.preventDefault();
let files = $('input.file_bag')[0].files;
let options = {
folder: Meteor.userId(),
image_metadata: true
};
Cloudinary.upload(files, options, function(error, result) {
console.log(result.public_id);
});
}
正在尝试将 Cloudinary 添加到我的 Meteor 应用程序。
图片未进入 Cloudinary 媒体库,上传函数回调未触发。我知道之前出现过问题,但我所做的似乎无济于事:
https://github.com/Lepozepo/cloudinary/issues/21
Template.commentSubmit.events({
'submit form': function(e, template) {
e.preventDefault();
var image = Session.get('photo'); // get image from mdg:camera
//console.log(image);
Cloudinary.upload(image, function(err, res) {
if (err){
console.log("Error: " + err);
return;
}
console.log("Success: " + res);
});
// code adding comment and image to mongodb
});
服务器:
Cloudinary.config({
cloud_name: '****',
api_key: '****',
api_secret: '*****'
});
客户:
$.cloudinary.config({
cloud_name: "******"
});
如果我手动将图像上传到 Cloudinary 仪表板,它显示图像没有问题。使用最新版本的 Meteor 和 lepozepo:cloudinary
感谢任何和所有帮助/建议! :)
更新 - 让它与此一起工作:
var image = Session.get('photo');
if(image){ // check if post also includes image
var files = [];
files.push(dataURLtoBlob(image));
let options = {
folder: "app",
image_metadata: true
};
var imageURL = ""; // loading gif
Cloudinary.upload(files, options, function(err, res) {
if (err){
console.log("Error: " + err);
return;
}
//console.log(res);
imageURL = res.secure_url;
//console.log(imageURL);
});
}
i 运行 进入同一个问题,"solved" 通过使用较早版本的软件包。我的 .meteor/packages 现在有这个:
lepozepo:cloudinary@=4.2.2
更新:
我没有使用 mdg:camera 来获取数据,只是一个简单的输入。在桌面上,它显示文件浏览器。在 iOS 上,它显示 "Take picture / Choose from library" 面板。 (它也适用于 Android)。
代码如下所示:
html:
<input type="file" id="upload-image" class="file_bag" accept="image/*">
js:
'change #upload-image': function(event, template) {
event.preventDefault();
let files = $('input.file_bag')[0].files;
let options = {
folder: Meteor.userId(),
image_metadata: true
};
Cloudinary.upload(files, options, function(error, result) {
console.log(result.public_id);
});
}