【问题标题】:Check status after verification - Twilio Verify验证后检查状态 - Twilio 验证
【发布时间】:2021-05-04 02:38:12
【问题描述】:

我有一个使用 Twilio 验证进行电子邮件验证的具有以下 3 步流程的网络应用程序:

  1. 使用验证创建验证码
  2. 使用验证检查验证码
  3. 在我的 web api 中创建用户帐户

在成功完成 Twilio 验证 验证码检查(第 2 步)后,我需要能够进行另一次 Twilio Verfy 调用,以确保在用户帐户实际上是在我的 web api 中创建的(步骤 3)。但是由于在成功的电子邮件验证后 SID 被删除,我得到以下GET 请求的答案: https://verify.twilio.com/v2/Services/{ServiceSid}/Verifications/{Sid}

{
  "code": 20404,
  "message": "The requested resource /Services/VAxxx/Verifications/VExxx was not found",
  "more_info": "https://www.twilio.com/docs/errors/20404",
  "status": 404
}

现在,对于前端来说,这很简单:只有在成功验证电子邮件后,我才会进入最后的帐户创建步骤。 但是,对于一个真正的无状态后端,在接受前端请求后,我首先需要与 Twilio 仔细检查电子邮件是否已经过验证。

从某种意义上说,如果电子邮件已经过验证,我不想将其存储在数据库中,这是真正的无状态。 (这已经由 Twilio 完成)

我该怎么做?我没有在 Twilio 文档中找到正确的 API。

【问题讨论】:

  • 验证一经验证即删除。我不确定我是否理解你对真正无国籍的渴望。无论是在 API 请求中还是您自己存储验证详细信息,都存在固有状态。您想在这里实现什么目标?
  • 基本上我想以编程方式访问服务日志中可见的此信息(待定、过期、已批准):twilio.com/docs/verify/api/…
  • 该日志无法通过 API 获得。我试图通过两次检查验证来了解您想要实现的目标,以便我可以提出替代方案。你能帮我理解吗?
  • 当前端通过 Twilio 验证电子邮件时,它可以决定是否继续执行调用后端创建新用户的最后一步。但是后端在创建新用户之前也无法检查验证。基线:与数据或用户输入验证类似,前端和后端都需要安全性。
  • 前端如何访问API?

标签: twilio


【解决方案1】:

这里是 Twilio 开发者宣传员。

我了解您希望获取日志中显示的可用信息,但这些信息无法通过 API 获得。一旦验证成功(或 10 分钟后超时,或达到最大错误尝试次数)it is deleted,您将无法再通过 API 访问它。我认为这是为了防止重放攻击,但我不在那个团队中,所以不知道背后的所有原因。

这样做的结果是您不能从您的代码中多次调用验证检查。

您必须将状态存储在您自己的系统中,因为 API 不会为您存储该状态。就像使用 2FA 登录时一样,您需要存储已成功输入密码的状态。

【讨论】:

  • 非常感谢您的关注,菲尔!
猜你喜欢
  • 2017-12-09
  • 1970-01-01
  • 2018-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多