Rails、Imap Oauth 和访问令牌刷新

问题描述 投票:0回答:1

我正在为客户编写一个定制的备份解决方案,我可以轻松验证和检索电子邮件。当访问令牌过期时会出现问题,我使用刷新令牌来获取新的访问令牌,这工作正常,但后来我遇到了问题,我需要继续获取消息,但出现 imap 错误

vendor/bundle/ruby/3.1.0/gems/net-imap-0.4.6/lib/net/imap.rb:2569:in                                                                           get_tagged_response': Session invalidated - AccessTokenExpired (Net::IMAP::ByeResponseError)
我已检查新的访问令牌是否已创建并在未来的日期/时间到期 那么我打电话
imap.authenticate('XOAUTH2',customer_email,customer_access_token)
但我收到上述错误。 我没有使用
imap = Net::IMAP.new
创建新的 imap 。所以我想知道是否不能重用 imap 对象,而必须创建一个新的对象,或者是否有一种方法可以重置错误。

ruby-on-rails oauth-2.0 imap
1个回答
0
投票

感谢@arnt和@Max的评论

经过进一步研究,它不允许您重用该对象,因此您必须使用 imap = Net::IMAP.new

© www.soinside.com 2019 - 2024. All rights reserved.