Meteor 流星文件上传不工作
我已经将包cfs:standard包和cfs:filesystem添加到我的meteor项目中。 我想使用带有此输入的表单上传我博客的特色图片Meteor 流星文件上传不工作,meteor,upload,Meteor,Upload,我已经将包cfs:standard包和cfs:filesystem添加到我的meteor项目中。 我想使用带有此输入的表单上传我博客的特色图片 <div class="form-group"> <label for="featuredImage">Featured Image</label> <input type="file" id="fImage" required> <p class="h
<div class="form-group">
<label for="featuredImage">Featured Image</label>
<input type="file" id="fImage" required>
<p class="help-block">Please choose an image file.</p>
</div>
服务器上的“UploadFeatureDiImage”方法为
Meteor.methods({
'uploadFeaturedImage': function(fileObj){
Uploads.insert(fileObj, function(err){
console.log(err);
});
}
});
当我选择要上载的图像文件时,出现以下错误-
“调用“uploadFeaturedImage”方法时出现异常错误:DataMan构造函数接收到它不支持的数据”
有人知道为什么会这样吗?多谢各位 我从collectionFS文档中复制了一些解释,因为这里的描述非常好 当需要插入位于客户端上的文件时,请始终在客户端上调用myFSCollection.insert。虽然您可以定义自己的方法,将fsFile传递给它,并在服务器上调用myFSCollection.insert,但困难在于将数据从客户端获取到服务器。将fsFile传递给方法时,只发送文件信息,而不发送数据。相反,当您直接在客户机上执行插入时,它会在插入后自动将文件的数据分块,然后将其排队,以便逐块发送到服务器。然后是在服务器上重新组合所有这些块并将数据填充回fsFile的问题。因此,执行客户端插入实际上可以节省所有这些复杂的工作,这就是我们推荐它的原因 看看
因此,您的方法不起作用,因为没有数据发送到服务器。非常感谢!这很有效。祝您度过愉快的一天先生:)在客户端调用Images.insert时,您如何确定上载何时准备就绪。即使fileObj.url()未定义,它也会立即启动回调?
Meteor.methods({
'uploadFeaturedImage': function(fileObj){
Uploads.insert(fileObj, function(err){
console.log(err);
});
}
});