流星文件上传(Meteor File Uploads)

2019-07-30 18:15发布

我看到这个已经在这里问过,但因为没有Meteor.http已面世。 我还在抓流星的概念和文件上传完全躲避我。

我的问题是:
所以,我认为是正确的方法,
Meteor.http.call("POST", url, [options], [asyncCallback])
你怎么放的网址是什么? 随着流星客户机/服务器的JavaScript的关系,它似乎并不像它真的使用URL那么多。

如果任何人有流星文件上传的一个基本的例子,这将仅仅是额外的真棒

Answer 1:

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

  1. WGET的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); } }); 

(我已经张贴在一个将如何处理文件上传与流星?对不起,我是新来的,它是犹太两次复制同样的答案吗?任何人谁知道更好的可以随意编辑。)



Answer 2:

还有被打了一下,有流星。 做了collectionFS流星GridFS的的组合(可以是相兼容)。 这里测试: http://collectionfs.meteor.com/它支持退出大文件,多个文件,用户等我测试过一个50MB似乎确定,如果连接丢失或死亡的浏览器,用户可以继续上传。 它甚至应该可以有多个用户上传到完全相同的文件 - 都没有放弃找到一个用例的,但它是可能的。 帐户,发布等是与集合 - 测试是在模式自动发布,但只有元数据是avaliable - 数据块在后台通过斑点服务。

我会尝试得到它在GitHub上,



Answer 3:

结帐如何做到这一点使用Meteor.Method的服务器和的FileReader的API客户端

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

经过多次搜索,这看起来对我来说最简单的(和暂时流星的风格的方式)来处理,没有额外的依赖关系的文件上传。



Answer 4:

由于流星包括JQuery的默认情况下,你可以利用jQuery插件的是,我相信,像: https://github.com/blueimp/jQuery-File-Upload/wiki/Options能为你做的伎俩,并且支持GET和PUT。

否则,这将是一个痛苦的屁股来得到它的工作,但不是不可能的,因为你可以在流星访问PUT。

如果您希望更纯JS sollution也许你可以看看: http://igstan.ro/posts/2009-01-11-ajax-file-upload-with-pure-javascript.html

并适应它。

有如此分享自己想出的,我会非常有兴趣对文件上传没有现成的支持!



Answer 5:

或者(如果你不喜欢使用像filepicker第三方解决方案),你可以使用流星路由器包。

这种处理在服务器端的HTTP请求。



文章来源: Meteor File Uploads