如何处理CollectionFS保存失败

时间:2015-03-17 01:05:59

标签: meteor

我正在使用collectionFS,特别是S3存储适配器。

大多数文件上传得非常好,我可以随后下载它们没有问题。

偶尔我会收到一个看似加载正常的文件(Files.insert(blob,callback)返回回调但没有错误)但稍后当我下载它们时fsFile.url()会返回null

https://github.com/CollectionFS/Meteor-CollectionFS#after-the-upload说:

  

如果任何存储适配器无法保存指定存储中的任何副本,则服务器将定期重试保存它们。在可保存的可配置失败尝试次数之后,服务器将放弃。

但是我没有知道这种失败的回调。此外,在查看fsFile.uploadProgress()时,我得到100%。

因此,基本问题是在上传过程中一切正常,我的应用只会在尝试下载文件时检测到问题。

  1. 有没有办法检测存储适配器中的上传失败?

  2. fsFile.url()返回null会有什么其他症状?

  3. 以下是mongodb中其中一个已损坏的 fsFile对象的示例:

    {
      "_id" : "uqAYajqCv68HmEJhu",
      "original" : {
        "updatedAt" : ISODate("2015-03-16T23:04:37.200Z"),
        "size" : 699072,
        "type" : ""
        },
      "chunkSize" : 2097152,
      "chunkCount" : 0,
      "chunkSum" : 1,
    }
    

1 个答案:

答案 0 :(得分:0)

在新版本的FScollection上,server侧,storeduploadederror已整合了3个事件。

Images.on('error', function (fileObj) {
      console.log("The " + fileObj + " with the _id " + fileObj._id " + just get an error when uploading")
    });

没有关于此的文档,因为raix和aldeed清理自述文件。