我之前已经在这里询问过,但是Meteor.http
之后就没有了。我仍然在掌握Meteor的概念,文件上传完全是我的想法。
这是我的问题:
所以,我认为是正确的方法,
Meteor.http.call("POST", url, [options], [asyncCallback])
你对网址有什么看法?使用meteor中的客户端/服务器javascript关系,它似乎并没有真正使用url。
如果有人在流星上有一个基本的文件上传示例,那就是 额外的精彩 。
答案 0 :(得分:6)
我会尝试在github上获取它,
答案 1 :(得分:4)
看看filepicker.io。他们处理上传,将其存储到您的S3中,并返回您可以转储到数据库中的URL。
将filepicker脚本放入客户端文件夹中。
wget https://api.filepicker.io/v0/filepicker.js
插入filepicker输入标记
<input type="filepicker" id="attachment">
在启动时,初始化它:
Meteor.startup( function() {
filepicker.setKey("YOUR FILEPICKER API KEY");
filepicker.constructWidget(document.getElementById('attachment'));
});
附加事件处理程序
Template.templateNameHere.events({
'change #attachment': function(evt){
console.log(evt.files);
}
});
(我已发布在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请求。