如何在 Meteor 中限制 Accounts.forgotPassword 的调用率?
How to limit call-rate of Accounts.forgotPassword in Meteor?
Accounts.forgotPassword
是客户端方法,会触发服务器发送邮件,所以需要限制call-rate。
它有内置的通话速率限制,但我觉得限制太低,我想改变它。
我没有找到任何官方解决方案,只是想出了一个解决方法:包装 Accounts.sendResetPasswordEmail
方法。但这并不好,因为客户端仍然可以调用 Accounts.forgotPassword
来过度发送电子邮件。
所以,我不知道如何正确处理。
根据 DDPRateLimiter 文档,您可以添加如下内容:
var rule = {type: 'method', method: 'forgotPassword'};
DDPRateLimiter.addRule(rule, 2, 60000);
那应该将对 forgotPassword
的调用限制为每分钟 2 次。您可以查看其他示例 here.
Accounts.forgotPassword
是客户端方法,会触发服务器发送邮件,所以需要限制call-rate。
它有内置的通话速率限制,但我觉得限制太低,我想改变它。
我没有找到任何官方解决方案,只是想出了一个解决方法:包装 Accounts.sendResetPasswordEmail
方法。但这并不好,因为客户端仍然可以调用 Accounts.forgotPassword
来过度发送电子邮件。
所以,我不知道如何正确处理。
根据 DDPRateLimiter 文档,您可以添加如下内容:
var rule = {type: 'method', method: 'forgotPassword'};
DDPRateLimiter.addRule(rule, 2, 60000);
那应该将对 forgotPassword
的调用限制为每分钟 2 次。您可以查看其他示例 here.