在Laravel中发送电子邮件的麻烦

时间:2019-05-26 18:22:46

标签: laravel-5

我正在尝试使用SendGrid发送邮件,拾取用户想要发送的电子邮件和消息,但是在尝试提交时出现此错误:

  

无法使用2个可能的验证器在用户名“JoãoGabriel”的SMTP服务器上进行验证。身份验证器LOGIN返回Swift_TransportException:预期的响应代码250,但是在...中得到了空响应。

我的可邮寄地址:

public $remetente;
public $nome;
public $destinatario;
public $data;

public function __construct($remetente, $nome, $destinatario, $data)
{
    $this->remetente = $remetente;
    $this->nome = $nome;
    $this->destinatario = $destinatario;
    $this->data = $data;

}

public function build()
{
    //$address = 'janeexampexample@example.com';
    $subject = 'This is a demo!';
    $name = 'Jane Doe';
    return $this->view('emails.test')
                ->from($this->remetente, $this->nome)
                ->subject($subject)
                ->replyTo($this->destinatario, $name);
}

}

我的控制器:

public function enviarEmail(Request $request){
    $destinatario = $request->input('destinatario');
    $mensagem = $request->input('mensagem');
    $remetente = \Auth::user()->email;
    $nome = \Auth::user()->name;

    Mail::to($destinatario)->send(new TestEmail($remetente, $nome, $destinatario, $mensagem));
}

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

您的错误消息表明SMTP服务器上的身份验证有问题。您的代码似乎没有错。

也许可以更好地检查错误消息,也许在堆栈跟踪的下方可能有一条特定的日志消息?

您是否已验证您的凭据正确?您是否已验证主机和端口?检查您的.env文件和config/mail.php,以查看您的设置是否正确。