使用Gitkit,如何验证注册密码的用户的电子邮件地址?

时间:2015-12-13 13:36:57

标签: java email-verification google-identity-toolkit

Google Identity Toolkit(Gitkit)文档仍然有一些不完整的主题报道。其中一个没有适当文档的案例是验证创建密码帐户而不是使用身份提供商登录的用户的电子邮件地址。

我确实在Gitkit的Java library中找到了方法public String getEmailVerificationLink(String email),但没有对此方法的描述。运行此方法后,我发现除了返回用户特定的验证链接外,它还会触发到此电子邮件地址的验证邮件。有时,此方法也会返回错误:org.json.JSONException: JSONObject["oobCode"] not found

所以问题是:该方法应该如何使用,是否还有电子邮件验证过程中需要的其他步骤/检查?例如,在调用此方法之前,我们是否需要单独检查电子邮件地址是否已经过验证?

Gitkit团队,除了回答这个问题之外,如果您能够在Gitkit API和客户端库的文档中填补其他空白,那将非常有用。另一个尚未涉及的主题的示例是对密码要求的控制:我们如何在注册页面上自定义密码强度要求并将其传达给用户?

1 个答案:

答案 0 :(得分:3)

Google Identity Toolkit IdToken中,有一个字段verified。如果为false,则表示用户的电子邮件尚未经过验证。

当您的服务器想要验证用户的电子邮件时,请致电getEmailVerificationLink(email)以从Identity Toolkit服务器获取一次性验证网址。 URL应指向Identity Toolkit小部件页面,在查询参数中包含一次性代码。

然后,您的服务器会将包含该网址的电子邮件发送到该地址。用户单击该URL后,Identity Toolkit小部件将处理剩余的步骤(验证一次性代码,在存储中标记已验证的标志),并将浏览器重定向到SignInSuccessUrl。

当前SDK中无法自定义密码强度。我们正在努力。

相关问题