我想使用laravel应用程序中的office365 smtp凭据发送电子邮件。我在.env文件中对电子邮件设置进行了如下更改:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.office365.com
MAIL_PORT=587
MAIL_USERNAME=info@***.com
MAIL_PASSWORD=*******
MAIL_ENCRYPTION=tls
当我尝试发送电子邮件时,出现类似
的错误Failed to authenticate on SMTP server with username \"info@omoyyc.com\" using 2 possible authenticators. Authenticator LOGIN returned Swift_TransportException: Expected response code 235 but got code \"535\", with message \"535 Incorrect authentication data\r\n\"
我的电子邮件发送代码如下
Mail::send(array(), array(), function ($m) use ($templatecontent) {
$m->from('customerservice@****.com', 'TEST');
$m->to('test@gmail.com', 'Test')
->subject($templatecontent['subject'])
->setBody($templatecontent['content'], 'text/html');
});
任何人都可以指导我解决什么问题以及如何解决这个问题吗?
答案 0 :(得分:3)
我有同样的问题。 我使用了 Gmail SMTP ,并启用了安全性较低的应用程序和禁用了双重身份验证的功能,但没有任何效果。就像@jessij提到的那样,令人惊讶的是,在双引号中设置密码有效。
在.env
文件中执行以下操作:
Replace: MAIL_PASSWORD=yourpassword
With: MAIL_PASSWORD="yourpassword"
答案 1 :(得分:1)
我不知道原因是否与OP相同,但是我遇到了相同的错误。我通过用双引号将密码括起来来解决此问题。
我假设当密码包含特殊字符时解析失败。
答案 2 :(得分:0)
如果您的密码包含特殊字符,如“john@#3398”,请将其放入“”。然后使用
清除你的php artisan缓存php artisan config:cache
然后开始您的php artisan serve
。
答案 3 :(得分:-1)
我的问题是老兄,但我的问题已解决,可以尝试:
如果您已经执行了此步骤,请重试您的项目。如果仍然无法使用,请继续执行以下步骤:
好运伙计!