当外部服务验证数据失败时该怎么办?

时间:2017-04-18 13:49:15

标签: php validation external

假设我们有一个需要使用第三方系统验证数据的系统。例如,我们允许用户注册,我们使用外部系统验证提供的电子邮件地址,该系统告诉我们电子邮件是否有效,是否是临时电子邮件等等。

我们的系统收到电子邮件地址,实时向第三方电子邮件验证系统发出请求,并且根据响应(电子邮件是否有效),它将允许用户注册。

我的问题是:如果连接出现问题会怎样? (超时,DNS错误等)。我认为允许用户继续注册过程是错误的,因为我们不知道电子邮件是否有效,但同时我们无法停止注册过程,因为电子邮件可能是有效的。

我想不止一次尝试连接(让我们说,三次)。如果失败,则返回错误代码,其中包含"请稍后重试"。这是解决这个问题的正确方法吗?

提前致谢:D

2 个答案:

答案 0 :(得分:0)

您对此的处理方式与服务器上任何其他子系统失败的方式相同,例如:数据库关闭:500 Internal Server Error or 503 Service Unavailable。您是否想在放弃之前尝试多次尝试取决于您。

答案 1 :(得分:0)

这完全取决于您使用的系统类型。如果您确信用户肯定会在以后回到您的网站并注册此方法就可以了。

但是在今天的世界里,有很多网络服务,用户是很好的资产,你不想放弃它们或他们的数据。您始终可以收集数据并将其存储在临时表中,以后如果您可以每5分钟运行一些计划任务,或者将它们添加到队列服务中以使用此第三方验证数据,并最终以适当的方式存储它们并发送它们有关其帐户处于活动状态的通知。通过这种方式,用户在使用您的网页时的体验非常棒,他们会回来(第二次胜利就是您可以实际验证他们的电子邮件帐户)