使用imaplib.IMAP4和OAuth进行身份验证,不使用OAuth2

时间:2013-04-26 04:21:40

标签: python oauth web.py imaplib rauth

我正在使用web.py构建一个简单的服务器来学习用户的gmail消息。我使用rauth库完成了OAuth流程,现在我有了访问令牌。我现在想使用imaplib来下载消息以进行处理。但是,我非常不清楚我如何使用IMAP4.authenticate方法。来自文档:

  

验证命令 - 需要响应处理。

     

机制指定要使用的身份验证机制 - 它应该以AUTH =机制的形式出现在nstance变量功能中。

     

authobject必须是可调用对象:

     

data = authobject(响应)   将调用它来处理服务器延续响应。它应该返回将被编码并发送到服务器的数据。如果应该发送客户端中止响应*,它应该返回None。

我在网上找到的所有examples都可以使用oauth2库或xoauth库的authenticate方法,但我已经读过oauth2已弃用且xoauth不适合生产。这是什么举动?我工作的图书馆是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

我想要的图书馆是Google的新版OAuth2 python library。我对命名感到困惑,因为不推荐使用的oauth2-python也是'import oauth2'。使用他们的库它很简单,因为他们有一个名为GenerateOAuth2String的函数,只需要一个电子邮件和一个令牌,并生成一些你可以写入imaplib的东西,他们在函数TestImapAuthentication中进行演示。完美。