首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以在不创建流星用户帐户的情况下使用edgee:slingshot文件上传程序来上传流星的文件?

是否可以在不创建流星用户帐户的情况下使用edgee:slingshot文件上传程序来上传流星的文件?
EN

Stack Overflow用户
提问于 2015-03-05 21:38:17
回答 2查看 517关注 0票数 1

我正在尝试创建一个简单的评论表单,访问者可以在其中创建评论。注释将是:注释={ name:"string",body:"string",image:"string“}

我希望任何人都能创建一个评论,并上传一个图片,而不需要创建一个用户帐户。动机是为了纪念一个去世的朋友。访问者应该能够上传一个内存的图片,而不需要创建一个帐户。

当我试图将文件上传到AWS时,会看到下面的错误:

代码语言:javascript
复制
TypeError: Meteor.userId is not a function


userId: Meteor.userId()                                                 // 70

我在该行上设置了一个断点,发现在第70行中,Meteor.userId()是未定义的。

代码语言:javascript
复制
validate: function(file) {                                                  // 68
      var context = {                                                           // 69
        userId: Meteor.userId()                                                 // 70
      };                                                                    

    // 71
      try {                                                                     // 72
        var validators = Slingshot.Validators,                                  // 73
            restrictions = Slingshot.getRestrictions(directive);                // 74
                                                                                // 75
        validators.checkAll(context, file, metaData, restrictions) && null;     // 76
      } catch(error) {                                                          // 77
        return error;                                                           // 78
      }                                                                         // 79
    },      

是否有任何方法可以禁用Meteor.userId()通过slingshot干净地通过API上传文件的需要?或者让用户注册并登录,这样Meteor.userId( )就可以使用了吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-17 15:36:06

它是弹弓中的一个错误,但也许你可以绕过它,直到它修好为止?

代码语言:javascript
复制
if (!Meteor.userId)
  Meteor.userId = function () {};

请注意,这个声明必须在使用弹弓之前出现,如果应用程序的任何部分依赖于Meteor.userId作为未启用帐户的标志,则此更改可能会破坏应用程序。

票数 0
EN

Stack Overflow用户

发布于 2015-03-10 11:45:31

你不需要userId上传。但是,当您使用validate时,您必须添加accounts包。您需要添加至少一个登录提供程序包:帐户-密码或.。

现在好像是个虫子。

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

https://stackoverflow.com/questions/28888256

复制
相关文章

相似问题

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