禁用流星注册

Sta*_*ser 16 javascript meteor

我想从我的Meteor应用程序中禁用注册.我正在使用accounts-ui smartpackage.

我试过这个:

Accounts.config({
  var forbidClientAccountCreation = true;
})
Run Code Online (Sandbox Code Playgroud)

但是我的app服务器崩溃了.我怎样才能解决这个问题?

这是使用一个通用的JS文件,不是一个用于客户端,一个用于服务器.

mqu*_*lle 41

Accounts.config采用一个参数,这是一个javascript hashmap.你应该写得正确:

Accounts.config({
  forbidClientAccountCreation : true
});
Run Code Online (Sandbox Code Playgroud)

  • 用户注册总是发生在服务器上,如果您修改客户端上的代码,它将发出注册您的用户的请求,并将获得"未授权"的HTTP错误,并且您的数据库中不会添加任何内容. (6认同)

ian*_*ell 18

我刚刚碰到这个,这里的答案并不完全清楚.接受的答案适用于OP,因为他使用单个JS文件,但如果没有,请将以下代码放在clientserver文件夹之外的文件中.

Accounts.config({
  forbidClientAccountCreation : true
});
Run Code Online (Sandbox Code Playgroud)

原因是在客户端上运行它将触发accounts-ui隐藏"注册"链接和文本的功能,并且在服务器上运行它实际上将禁止创建新用户帐户.

如果您只在客户端上运行它,链接和文本将被隐藏,但您仍然可以通过浏览器的控制台创建一个帐户.

如果您只在服务器上运行它,则帐户创建将始终失败,但您仍将获得关联的链接和文本.

代码的一个好地方在lib文件夹中,因为Meteor中的任何内容都将由服务器和客户端上的Meteor处理,也可以在任何其他文件夹之前处理.例如,您可以将其放入lib/environment.js.