我正在第一時間在Laravel使用smtp發送郵件。Laravel 5電子郵件錯誤handeling當用戶名或密碼錯誤
我已經配置了我的gmail的詳細信息,並且每件事情都正常,我收到了郵件到我的收件箱。
但我想知道如何提供錯誤/例外,如提供的用戶名或密碼等gmail信息是錯誤的。
現在,當我提供了錯誤的密碼,它正在我下面的消息,出錯畫面:
Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 250 but got code "535", with message "535-5.7.8 Username and Password not accepted. Learn more at 535 5.7.8 https://support.google.com/mail/answer/14257 f191sm3044706pfa.26 - gsmtp"
我已經嘗試添加在app \例外一些代碼\ handler.php如下
public function render($request, Exception $e)
{
//This is my code
if ($e instanceof Swift_RfcComplianceException){
return redirect($request->fullUrl())->with('error',"We have issue sending you an email");
}
return parent::render($request, $e);
}
在.ENV文件
我的SMTP細節是:(做工精細)
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
[email protected]
MAIL_NAME=Arun Singh
[email protected]
MAIL_PASSWORD=mypassword
代碼snipp等待發送郵件:(工作正常)
Mail::queue('/emails/test', array('firstname'=>'arun'), function($message){
$to_email = '[email protected]';
$to_firstname = 'Sanju';
$to_lastname = 'Singh';
$message->to($to_email, $to_firstname.' '.$to_lastname)->subject('Welcome to the XYZ!');
})
謝謝你的幫助。
如果你想處理'Swift_TransportException',你應該檢查'if ($ e instanceof Swift_TransportException)'在你的自定義異常渲染器 – henrik
謝謝你的工作。你能告訴我如何讀取例外信息以顯示給最終用戶。 –
是的,您可以通過Exception對象的getMessage函數來訪問異常消息:'$ e-> getMessage()' – henrik