我正在尝试为用户注册实施自定义电子邮件验证。默认的只发送纯文本消息,但我们想发送HTML格式的消息。
目前的做法:
Parse.Cloud.beforeSave("Parse.User"…
会在用户的confirmationToken
'中设置生成的令牌。字段锂>
confirmationToken
的确认链接{{3} }} confirmationToken
confirmationToken
字段值emailVerified
字段设置为true
... 现在问题出在这里。 emailVerified
字段似乎受到保护。尝试设置它会为您提供ParseException
' InvalidKeyName' (的 105 )。现在,我可以使用另一个字段,但问题是我们之前已经设置了默认的Parse电子邮件验证,我们的应用程序正在emailVerified
中查找该值。用户已使用默认电子邮件验证进行注册,我们无法仅因为部署了应用而对其进行了更改。
我们有什么方法可以设置emailVerified
字段吗?
任何人都可以想到一个解决方案,它也适用于已经在检查这个领域的应用程序,即使将来我们还要设置另一个?
如果您禁用电子邮件验证(现在它仍然启用),该字段是否仍受保护?
非常感谢任何帮助。
答案 0 :(得分:2)
我想补充一点,我们已经在Parse 60天前部署了一个应用程序,平均每周有2,000个新用户需要进行电子邮件验证。我们的用户主要是政府(很多.gov' s)。我们每天花费数小时处理Zendesk中没有收到验证链接的用户的支持票。支持正在压制我们。
我意识到锁定该字段的意图,但如果我收到用户发来的电子邮件,那么我的验证就足够了,这样可以节省我们将电子邮件验证为真的时间。
请重新考虑让开发人员自己做出这个决定。
答案 1 :(得分:1)
不幸的是,即使使用主密钥,也无法设置emailVerified
属性。唯一的选择是创建自定义验证属性以与自定义验证逻辑一起使用。
我采取的方法是:
emailVerified
afterSave
中为任何Parse.User
我意识到第4步违反了问题的前提,但您的应用必须在客户可以并且将要修改的前提下设计。如果不是这个问题,那将是另一个问题。运营条件将发生变化,您的客户也必须如此。