首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用S3限制文件上载到Slingshot.createDirective

如何使用S3限制文件上载到Slingshot.createDirective
EN

Stack Overflow用户
提问于 2016-03-05 13:05:59
回答 1查看 120关注 0票数 1

我试图将我上传到亚马逊s3的次数限制在10张图片上,我看到了https://github.com/themeteorchef/uploading-files-to-amazon-s3/blob/master/code/server/slingshot.js的链接

出于某种原因,它不适用于我,这是我的代码

代码语言:javascript
复制
Slingshot.createDirective( "uploadToAmazonS3Cg2", Slingshot.S3Storage, {
  bucket: "bucket-name",
  region: 'ap-southeast-1',
  acl: "public-read",
  authorize: function () {
    return true;
  },
  key: function ( file ) {
    var user = Meteor.users.findOne( this.userId );
    return user.emails[0].address + "/screenshots" + "/" + file.name;
  }
});

这里是html文件中的上传程序。

代码语言:javascript
复制
  Application ScreenShots:
  {{> uploader config="2"}}

这就是我如何根据我上面所附的链接调用我的弹弓方法。

代码语言:javascript
复制
 var uploader
  if (config === '1') {
      uploader = new Slingshot.Upload( "uploadToAmazonS3Cg1" );
  } 
  if (config === '2') {
      uploader = new Slingshot.Upload( "uploadToAmazonS3Cg2" );
  } else {
      uploader = new Slingshot.Upload( "uploadToAmazonS3Cg3" );
  }

我返回了真,据我的理解,它应该允许我上传多少,我想,但我只能上传一个文件。我是不是漏掉了什么?是否有其他方法来设定限制?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-05 14:09:14

查看一下弹弓的源代码,您需要一次上传一个文件。要限制用户上传的文件总数,您需要使用授权函数并存储它们在Mongo中上传的文件数量。根据您的问题,我不确定您指的是总共10个文件还是每次10个文件,但如果一次是10个文件,您只需在文件输入元素上使用jQuery验证即可验证。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35814502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档