流星文件上传

时间:2012-08-03 06:09:04

标签: file-upload meteor

我之前已经在这里询问过,但是Meteor.http之后就没有了。我仍然在掌握Meteor的概念,文件上传完全是我的想法。

这是我的问题:
所以,我认为是正确的方法,
Meteor.http.call("POST", url, [options], [asyncCallback])你对网址有什么看法?使用meteor中的客户端/服务器javascript关系,它似乎并没有真正使用url。

如果有人在流星上有一个基本的文件上传示例,那就是 额外的精彩

5 个答案:

答案 0 :(得分:6)

很好地与流星玩了一下。将collectionFS混合成meteor和gridFS(可以兼容)。 在此测试:http://collectionfs.meteor.com/ 它支持退出大文件,多个文件,用户等。我已经测试了50Mb似乎没问题,如果连接丢失或浏览器死了,用户可以恢复上传。 甚至可以让多个用户上传到完全相同的文件 - 没有退出找到它的用例,但它是可能的。 帐户,发布等与集合一样 - 测试处于自动发布模式,尽管只有元数据可用 - 大量数据通过blob在后台提供。

我会尝试在github上获取它,

答案 1 :(得分:4)

看看filepicker.io。他们处理上传,将其存储到您的S3中,并返回您可以转储到数据库中的URL。

  1. 将filepicker脚本放入客户端文件夹中。

    wget https://api.filepicker.io/v0/filepicker.js
    
  2. 插入filepicker输入标记

    <input type="filepicker" id="attachment">
    
  3. 在启动时,初始化它:

    Meteor.startup( function() {
        filepicker.setKey("YOUR FILEPICKER API KEY");
        filepicker.constructWidget(document.getElementById('attachment'));
    });
    
  4. 附加事件处理程序

    Template.templateNameHere.events({
        'change #attachment': function(evt){
            console.log(evt.files);
        }
    });
    
  5. (我已发布在How would one handle a file upload with Meteor?抱歉。我是新来的。两次复制同一个答案是否犹豫不决?任何知道更好的人都可以随意编辑。)

答案 2 :(得分:1)

使用服务器上的Meteor.Method和客户端上的FileReader API来查看如何完成此操作

https://gist.github.com/dariocravero/3922137

经过多次搜索后,这对我来说是最简单的(目前流星风格的方式)处理文件上传而没有额外的依赖。

答案 3 :(得分:-1)

由于meteor默认包含JQuery,你可以使用Jquery插件,我认为,类似于:https://github.com/blueimp/jQuery-File-Upload/wiki/Options可以为你做这个技巧,并支持GET和PUT。

否则让它发挥作用会很痛苦,但并非不可能,因为你可以在流星中访问PUT。

如果您更喜欢更纯粹的JS溶液,可以查看:http://igstan.ro/posts/2009-01-11-ajax-file-upload-with-pure-javascript.html

并适应它。

没有现成的文件上传支持,所以分享你的想法,我会非常感兴趣!

答案 4 :(得分:-1)

或者(如果您不想使用像filepicker这样的第三方解决方案),您可以使用meteor router包。

它处理服务器端的HTTP请求。