У меня небольшая проблема с аутентификацией Gmail, я пытаюсь подключиться через токен, полученный OAuth2.
Я помещаю свой код ниже.
try {
$xOAuthRequest = base64_encode('user=' . $account->getSmtpServer()->getLogin() . "\1auth=Bearer " . $account->getOAuthToken()->getToken() . "\1\1");
$transport = new TransportSmtp();
$options = new SmtpOptions([
'host' => 'smtp.gmail.com',
//'port' => 587,
'connection_class' => 'smtp',
'connection_config' => [
'username' => $account->getSmtpServer()->getLogin(),
//'password' => $account->getSmtpServer()->getPassword(),
'ssl' => 'tls',
'port' => 587,
'auth' => 'xoauth',
'xoauth_request' => $xOAuthRequest
]
]);
$transport->setOptions($options);
$this->setTransport($transport);
} catch (Exception $exception){
dump($exception);
}
Возврат кода:
5.7.0 Authentication Required. Learn more at 5.7.0 https://support.google.com/mail/?p=WantAuthError v23sm426024ljg.122 - gsmtp
Я также пробовал использовать SSL и порт 465 и раскомментированный пароль.
Что я делаю не так?