Ralat Pengesahan SMTP 535: Nama Pengguna dan Kata Laluan Tidak Diterima dengan Gmail
Apabila cuba menghantar e-mel daripada localhost menggunakan fungsi yang disediakan, pengguna mungkin menghadapi ralat berikut:
smtp error: 535 5.7.8 Username and Password not accepted for gmail...
Walaupun memastikan kelayakan dan mendayakan "Benarkan apl yang kurang selamat," isu ini masih boleh berlaku.
Punca
Ralat menunjukkan bahawa bukti kelayakan pengesahan yang digunakan adalah salah atau tidak dibenarkan. Google baru-baru ini telah melaksanakan langkah keselamatan yang lebih ketat, yang boleh menghalang penghantaran e-mel daripada apl tertentu.
Penyelesaian
Untuk menyelesaikan isu ini, disyorkan untuk:
Menggunakan Kata Laluan Apl
Ganti kata laluan biasa dalam Kod pengesahan SMTP dengan Kata Laluan Apl yang dijana. Kod yang dikemas kini akan kelihatan seperti ini:
err = smtp.SendMail("smtp.gmail.com:587", smtp.PlainAuth("", from, appPassword, "smtp.gmail.com"), from, []string{to}, []byte(msg))
Nota: Kata Laluan Apl menyediakan akses terhad kepada Akaun Google anda khusus untuk apl atau peranti.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Pengesahan SMTP 535: Nama Pengguna dan Kata Laluan Tidak Diterima dengan Gmail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!