imap_打开():无法打开流{imap.gmail.com:993/imap/ssl/novalidate-cert}收件箱

evrscar2  于 2023-01-31  发布在  其他
关注(0)|答案(1)|浏览(197)

我正在尝试通过PHP代码访问gmail收件箱来阅读电子邮件。

$hostname = '{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX';
$inbox = imap_open($hostname, $username, $password) or die('Cannot connect to Gmail: ' . imap_last_error());

但低于误差。

imap_open(): Couldn't open stream {imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX`

在一些解决方案中,有一些选项可以启用安全性较低应用程序。2但是gmail不再启用此设置。
尝试查找安全性较低的应用程序的设置,但此设置不再可用。

cvxl0en2

cvxl0en21#

问题是谷歌已经删除了安全性较低的应用程序设置。因此,您需要使用应用程序密码或切换到使用xauth。
如果你的谷歌账户启用了2fa,你可以创建一个应用密码,然后用这个密码代替你的标准谷歌密码

imap_open($hostname, $username, $appspassword)

How I create an Apps Password in 17 seconds!
Xoauth2有点复杂,涉及到在google注册一个应用程序和请求用户授权。如果你需要一个示例,请告诉我,我可能有一些东西。

相关问题