Mailgun上的“ smtp; 550条消息应该有一个或没有应答头,而不是2”

发给我一位用户的电子邮件在Mailgun上定期失败,错误为smtp; 550 Messages should have one or no Reply-To headers,not 2

我在Mailgun日志中看不到我的Reply-To标头,但是可以肯定的是,我只能在Reply-To标头中发送一封电子邮件。这是我的Ruby on Rails代码,有条件地设置了标题:

    folder_emails = @fileuploads.map do |f|
      f.folder =~ /([\w+\-.]+@[a-z\d\-.]+\.[a-z]+)/i
      Regexp.last_match(1)
    end.compact.uniq
    email_params[:reply_to] = folder_emails.first if folder_emails.size == 1

如果该代码中未设置:reply_to字段,则默认为我的reply-to中定义的默认Applicationmailer

我正在使用mailgun-ruby宝石来发送邮件(config.action_mailer.delivery_method = :mailgun)。

l1314121 回答:Mailgun上的“ smtp; 550条消息应该有一个或没有应答头,而不是2”

解决了! tl; dr:我需要在电子邮件地址的名称周围加上引号。

代替:

default from: "Robot@Fileinbox <robot@finbox.com>",reply_to: "Christian@Fileinbox <christian@finbox.com>"

我需要:

default from: %("Robot@Fileinbox" <robot@finbox.com>),reply_to: %("Christian@Fileinbox" <christian@finbox.com>)

Mailgun支持人员说它正在发送两个Reply-To标头:

Reply-To: "Christian@Fileinbox" <christian@finbox.com>

Reply-To: Christian@Fileinbox <christian@finbox.com>

这很奇怪,因为我肯定只发送了一个(登录我的email_params[:reply_to]时只显示了一个地址)。我认为管道中的某个地方有些不高兴,因为电子邮件的Christian@Fileinbox名称部分加上了引号。

在Mailgun中添加引号和删除电子邮件抑制功能解决了该问题!我的用户再次收到电子邮件:D

本文链接:https://www.f2er.com/2982479.html

大家都在问