已过期确认代码的HTTP状态代码



我的REST API中有一个端点,它会发送用户每次电子邮件收到的代码,以验证电子邮件地址。

我应该使用什么状态代码来返回此代码已过期?

是401、410还是498?

如果你想向用户显示他们的授权码是无效的,我建议使用状态码498

或者使用410来表明该链接是无效的

编辑:注意498是一个非官方状态代码

HTTP状态码是通过网络域传输文档的元数据。它们是指示通用HTTP客户端如何解释响应(尤其是其他元数据字段(的令牌。

当考虑一个未分配的状态代码(如498(时,您需要记住,不识别该代码的通用组件会将该响应视为具有同一类的x00响应代码(因此498->400298->200,依此类推(。

也就是说,如果您的预期上下文包括理解498语义的客户端,那么这就不那么令人担忧了。


我在我的REST API中有一个端点,它会发送用户在每封电子邮件中收到的代码来验证电子邮件地址。

我应该更好地使用什么状态代码来返回此代码已过期?

我认为,你可以为200或410提出一个很好的理由。

在任何一种情况下,对客户端来说,重要的是有效载荷中的表示,它将是某种";非常抱歉"消息,也许还有超媒体控件来重新启动进程。

410响应主要用于通过通知接收方资源故意不可用以及服务器所有者希望删除到该资源的远程链接来协助web维护任务。

所以这可能是一个合理的选择,因为你并不特别希望这个URI被重用

如果URL读起来像https://website.com/confirm-email/1738-65b9-7a39-8d1c,我会使用http状态代码410

相关内容

最新更新