1

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

4

2 回答 2

5

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

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

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

已编辑

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

于 2012-12-01T11:19:29.930 回答
0

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

相反,您可以向用户发送一个设置为在 10 分钟左右后过期的令牌,这可以(大致)由

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