无法使用 2 个可能的身份验证器在用户名“***”的 SMTP 服务器上进行身份验证

时间:2021-03-14 09:20:17

标签: php laravel oauth google-drive-api backup

我使用带有 Laravel 的 google drive api 进行连续备份,所以我使用以下软件包

<块引用>

"nao-pon/flysystem-google-drive": "~1.1", 和

<块引用>

"spatie/laravel-backup": "^6.14"

我已经使用刷新令牌设置了 google drive api v3 并将其放入 .env

FILESYSTEM_CLOUD=google
GOOGLE_DRIVE_CLIENT_ID=****.apps.googleusercontent.com
GOOGLE_DRIVE_CLIENT_SECRET=****
GOOGLE_DRIVE_REFRESH_TOKEN=****
GOOGLE_DRIVE_FOLDER_ID=****

所以一切正常,我可以使用谷歌驱动器作为磁盘来每天通过 cron 作业存储备份,唯一的问题是一周后刷新令牌过期(我假设)并停止处理此错误留言,

Failed to authenticate on SMTP server with username "****" using 2 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code "535", with message "535 Incorrect authentication data

如果我再次从 oathplayground 更改刷新令牌并将其放入 .env,它会再次开始工作一周。

那么我该如何解决这个问题,这样我就不需要每周都生成令牌了。

2 个答案:

答案 0 :(得分:1)

Oauth playground 仅用于测试。在 Playground 上创建的代币只能使用大约两周。

您应该实施自己的授权。

答案 1 :(得分:0)

它在 OAuthPlayground 中说它会在 24 小时后撤销授权令牌。

Note OAuthPlayground

设置 GCP 项目、同意屏幕和授权的过程对于所有编程语言都是相同的。查看 this answer 以获取授权的分步指南。