注意:我已经阅读了这篇文章,但我仍然不知道如何正确地构建发送电子邮件函数,所以我问了这个问题。我需要知道在电子邮件发送成功或失败时使用的HTTP状态代码,如果这不是正确的做法,那么正确的做法是什么。
向我的Rails应用程序发送POST请求将发送电子邮件。
如果电子邮件发送失败,我应该在JSON响应中返回什么HTTP状态代码给发送POST请求的人?
向我的Rails应用程序发送POST请求将发送电子邮件。
如果电子邮件发送失败,我应该在JSON响应中返回什么HTTP状态代码给发送POST请求的人?
def inform
delivered = true
begin
UserMailer.new_comment(current_user, other_user, @note).deliver_now
rescue Net::SMTPAuthenticationError, Net::SMTPServerBusy, Net::SMTPSyntaxError, Net::SMTPFatalError, Net::SMTPUnknownError
delivered = false
end
if delivered
# I use :created here because email is created
render json: { delivered: true }.to_json, status: :created
else
# I use :service_unavailable here because email sending failed
render json: { delivered: false }.to_json, status: :service_unavailable
end
end