向用户发送电子邮件以在Android应用程序中重置密码



我已经通过Android应用程序中的SOAP Web服务使用MySQL连接开发了一个登录表单(用户名,密码和提交按钮)。 在这里我忘记了密码意味着我无法访问我的帐户。那么我如何访问我的 account.so 我添加了一个文本视图(忘记密码???单击此处)。我已完成注册页面。注册页面有用户名、密码和 email.so 当我忘记密码时意味着单击忘记密码文本视图。然后是转到忘记密码活动。当我输入注册的电子邮件 ID 时,这意味着我的密码被重置并发送到我的电子邮件 id.so 我现在知道我的密码。我该怎么办。请以编程方式帮助我。

我认为更好的方法是,您的mysql数据库中有用户当前密码,然后只需获取用户电子邮件地址并调用您的Web服务即可。

现在从您的服务中搜索电子邮件地址是否存在,如果存在,则获取密码并从服务发送电子邮件,并在成功/失败/不存在时用户返回消息给您 android 作为响应。

您只需要从android调用该服务,而无需更改用户密码以获取邮件并使用当前凭据登录。

编辑

如果

这样做,则调用Web服务并传递电子邮件地址搜索电子邮件搜索以检查是否存在(如果存在),然后创建动态密码字符串并更新该用户的密码,并将此密码发送到用户电子邮件地址。

您应该避免在电子邮件中发送密码。

相反,您可以向用户发送一个令牌,该令牌设置为在 10 分钟左右后过期,可以(大致)通过以下方式实现

  • 创建一个表来记录忘记密码的请求(用户标识、令牌、requested_on expires_on)。
  • 当用户请求重置密码时,请向他们发送一封电子邮件,其中包含将此记录到表中的令牌。
  • 创建密码重置表单,用户可以在其中输入令牌和新密码。
  • 提交密码重置后,根据日志检查令牌对用户是否有效。
  • 如果重置成功,则将用户带到登录表单。

最新更新