如何限制Meteor中Accounts.forgotPassword的通话率?

时间:2015-11-19 04:49:52

标签: meteor meteor-accounts

Accounts.forgotPassword是客户端方法,它会触发服务器发送电子邮件,因此我们需要限制通话率。

它有内置的通话率限制,但我认为限制太低,我想改变它。

我没有找到任何正式的解决方案,只找到了解决办法:包装Accounts.sendResetPasswordEmail方法。但这并不好,因为客户仍然可以通过Accounts.forgotPassword来过度发送电子邮件。

所以,我不知道如何妥善处理这个问题。

1 个答案:

答案 0 :(得分:0)

根据DDPRateLimiter文档,您可以添加以下内容:

var rule = {type: 'method', method: 'forgotPassword'};
DDPRateLimiter.addRule(rule, 2, 60000);

这应该限制每分钟调用forgotPassword到2。您可以看到其他示例here