gpt4 book ai didi

ruby-on-rails - Rails 电子邮件验证的最新技术水平如何?

转载 作者:行者123 更新时间:2023-12-03 04:54:57 24 4
gpt4 key购买 nike

您使用什么来验证用户的电子邮件地址,为什么?

我一直在使用validates_email_veracity_of它实际上查询 MX 服务器。但由于各种原因,这充满了失败,主要与网络流量和可靠性有关。

我环顾四周,找不到任何明显的东西,很多人都用它来对电子邮件地址进行健全性检查。是否有一个维护的、相当准确的插件或 gem ?

P.S.:请不要告诉我发送带有链接的电子邮件来查看电子邮件是否有效。我正在开发“发送给 friend ”功能,因此这不实用。

最佳答案

不要让事情变得比需要的更困难。您的功能并不重要;验证只是捕获拼写错误的基本理智步骤。我会用一个简单的正则表达式来完成它,而不是将 CPU 周期浪费在任何过于复杂的事情上:

/\A[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]+\z/

改编自 http://www.regular-expressions.info/email.html ——如果你真的想了解所有的权衡,你应该阅读这本书。如果您想要一个更正确、更复杂、完全符合 RFC822 的正则表达式,也可以在该页面上找到。但问题是这样的:你不必完全正确。

如果地址通过验证,您将发送一封电子邮件。如果电子邮件发送失败,您将收到一条错误消息。此时您可以告诉用户“抱歉,您的 friend 没有收到,您​​想再试一次吗?”或将其标记为手动审核,或忽略它,等等。

如果地址确实通过了验证,这些选项与您必须处理的选项相同。因为即使您的验证是完美的并且您获得了该地址存在的绝对证据,发送仍然可能会失败。

验证误报的成本很低。更好的验证带来的好处也很低。慷慨地进行验证,并在错误发生时担心它们。

关于ruby-on-rails - Rails 电子邮件验证的最新技术水平如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1156601/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com