Saya mengikuti Menggunakan Gmail dengan XOAUTH2 (PHPMailer Wiki) dan Bagaimana untuk menghantar e-mel menggunakan PHPMailer dengan Gmail XOAUTH2? (Chandan untuk w3jar.com; Mei 2019). < /p>
Hari ini, tapak web saya tidak dapat menghantar e-mel kerana token muat semula telah tamat tempoh.
Kemudian saya membaca Wiki PHPMailer sekali lagi dan mendapati ini:
Jadi, saya perlu pergi ke halaman ini dan klik Google
.
Kemudian pilih akaun yang saya akan hantar e-mel.
Segar semula token baharu akan ditunjukkan seperti di bawah.
Selepas itu saya perlu menyalin token muat semula ini dan menampalnya ke dalam fungsi hantar e-mel saya.
<?php use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\OAuth; use League\OAuth2\Client\Provider\Google; function sendEmail($email, $title, $detail) { try { $refreshToken = 'I am here'; //////// I am hereeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee $mail = new PHPMailer(true); //Server settings $mail->*ANY*; //Create a new OAuth2 provider instance $provider = new Google([ 'clientId' => $clientId, 'clientSecret' => $clientSecret ]); //Pass the OAuth provider instance to PHPMailer $mail->setOAuth(new OAuth([ 'provider' => $provider, 'clientId' => $clientId, 'clientSecret' => $clientSecret, 'refreshToken' => $refreshToken, 'userName' => $senderEmail, ])); if ($mail->send()) return true; return false; } catch (\Throwable $th) { return null; } }
Inilah yang perlu saya lakukan apabila token tamat tempoh.
Gmail tidak mempunyai sebarang pemberitahuan tentang tamat tempoh token muat semula.
Ini menyebabkan masalah kepada orang yang menggunakan tapak saya. Sehinggalah ada yang menghubungi saya dan memberitahu masalah ini.
Bagaimana untuk mendapatkan token muat semula secara automatik?
Langkah ini memerlukan seseorang untuk mengklik butang Google
dan kemudian klik pada akaun Gmail untuk mendapatkan token muat semula.
Bolehkah saya menggunakan PHP? Bagaimanakah saya boleh mengautomasikan proses ini?
Akhir sekali, saya menggunakan pengesahan dua langkah. Rujukan: https://www.youtube.com/watch?v= mte7LroYd74&list=LL&index=1&t=2s