电子邮件发送失败的 http 状态代码
http status code for failed email send
考虑创建用户的 API 调用。成功后,将创建用户并发送确认电子邮件。响应状态代码为 201。
如果用户未创建,响应状态码为422。
如果创建了用户但发送确认邮件失败,响应状态码应该是什么?
问题的核心在于混合使用 RESTful 资源创建和 RPC 样式操作。在 RESTful 世界中,用户的创建将是原子操作和 return 201 或 422(或您选择的任何错误代码)。那么确认电子邮件的发送可能是另一个 POST 到 /api/user/confirmationemailtask 然后分拆电子邮件过程。当您将两者结合起来时,您会发现模棱两可的地方。
(移动评论以供后代回答)
考虑创建用户的 API 调用。成功后,将创建用户并发送确认电子邮件。响应状态代码为 201。
如果用户未创建,响应状态码为422。
如果创建了用户但发送确认邮件失败,响应状态码应该是什么?
问题的核心在于混合使用 RESTful 资源创建和 RPC 样式操作。在 RESTful 世界中,用户的创建将是原子操作和 return 201 或 422(或您选择的任何错误代码)。那么确认电子邮件的发送可能是另一个 POST 到 /api/user/confirmationemailtask 然后分拆电子邮件过程。当您将两者结合起来时,您会发现模棱两可的地方。
(移动评论以供后代回答)