Ожидаемый код ответа 220, но получил код "", с сообщением "" При попытке отправить электронное письмо с использованием SwiftMailer & localhost - PullRequest
0 голосов
/ 24 января 2019

Я относительно новичок в php, поэтому я могу сделать глупую ошибку, но я провел весь день, просматривая другие вопросы на SO и других сайтах, но ни одно из решений не помогло мне.

Я пытаюсь отправить простое тестовое электронное письмо, которое позже подключу к форме, но в данный момент возникает следующая ошибка.

Неустранимая ошибка: Uncaught Swift_TransportException: ожидаемый код ответа 220, но получил код "", с сообщением "" в C: \ Users \ Simon Alexander \ php \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport. php: 419 Трассировка стека: # 0 C: \ Users \ Simon Alexander \ php \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport.php (325): Swift_Transport_AbstractSmtpTransport-> assertResponseCode ('', Array) # 1 C: \ Users \ Симон Александр \ php \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport.php (130): Swift_Transport_AbstractSmtpTransport-> readGreeting () # 2 C: \ Users \ Симон Александр \ php \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Mailer.php (67): Swift_Transport_AbstractSmtpTransport-> start () # 3 C: \ Users \ Simon Alexander \ php \ site.php (15): Swift_Mailer-> send (Object (Swift_Message)) # 4 {main} в C: \ Users \ Simon Alexander \ php \ vendor \ swiftmailer \ swiftmailer \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport.php в строке 419

В настоящее время я использую localhost, включил двухэтапную проверку в Google и получил 16-значный ключ приложения.

require_once 'vendor/autoload.php';

$transport = (new Swift_SmtpTransport('smtp.gmail.com', 587, 'ssl'))
    ->setUsername('email1@gmail.com')
    ->setPassword('xxxxxxxxxxxxxxxx');

$mailer = new Swift_Mailer($transport);

$message = (new Swift_Message('Wonderful Subject'))
    ->setFrom(array('email1@gmail.com' => 'email1Name'))
    ->setTo(array('email2@gmail.com'))
    ->setBody('This is a test mail.');    

$result = $mailer->send($message);

Мой код почти идентичен примеру в документации SwiftMailer, поэтому я довольно озадачен тем, что происходит?

...