我真的不知道这是否是关于SwiftMailer或mailtrap.io但问题是当我尝试建立到所述服务的 SMTP 连接时 ( mailtrap.io) 我从来没有收到任何错误,即使我不使用任何用户名或密码。不使用任何用户名或密码时,我不应该收到任何身份验证错误吗?还是我这样做是错误的?
这是我在将其存储到.env文件中之前用于测试是否可以建立动态连接的方法。
/**
* E-mail configuration
*
* @param Request $request
* @return \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse
*/
public function postEmailConfiguration(Request $request)
{
# Try connecting to the SMTP
try {
$encryption = $request->input('encryption');
if ($encryption == 'null') {
$encryption = NULL;
}
$transport = new Swift_SmtpTransport($request->input('host'), $request->input('port'), $encryption);
$transport->setUsername($request->input('username'));
$transport->setPassword($request->input('password'));
$mailer = new Swift_Mailer($transport);
$mailer->getTransport()->start();
# Update .env file
$this->setEnvironmentValues([
'MAIL_HOST' => $request->input('host'),
'MAIL_PORT' => $request->input('port'),
'MAIL_USERNAME' => $request->input('username'),
'MAIL_PASSWORD' => $request->input('password'),
'MAIL_ENCRYPTION' => $request->input('encryption')
]);
return redirect()->back()->with('success', 'Connection to SMTP establised and saved!');
}
# Could not connect to SMTP
catch (Swift_TransportException $e) {
return redirect()->back()->with('error', 'Could not connect to SMTP server.<br>Error: ' . $e->getMessage());
}
# Could not connect to SMTP
catch (Exception $e) {
return redirect()->back()->with('error', 'Could not connect to SMTP server.<br>Error: ' . $e->getMessage());
}
}
慕尼黑的夜晚无繁华