2010-10-17 97 views
5

我的php应用程序通过oauth登录到Gmail,为收件箱中的所有邮件提供访问密钥和提取标头。 php-imap扩展只允许基于登录/密码的身份验证。我想修改扩展名,以便它也支持基于oauth的身份验证。我需要弄清楚如何在扩展代码本身内部进行更改并编译它。不好的部分,我没有太多线索在哪里做出改变,以及如何编译一个php扩展修改php-imap扩展以允许oauth身份验证

早些时候我使用Zend提供的IMAP类来完成这个任务。它们非常慢,如果连接时间超过40-45分钟,gmail往往会断开连接。对于非常大的收件箱,这种情况经常发生。我用php-imap扩展测试了它,它的工作速度比Zend快了近10倍(我猜是因为它写成C)

所以我需要弄清楚如何以及在哪里认证发生在当前的php- imap代码以及如何在进行更改后重新编译它。

任何指针表示赞赏。

回答

2

PHP包装了c-client库,因此首先需要检查的是如果有一种方法可以对该库使用OAuth身份验证。您可以尝试this mailing list

PHP扩展仅在one file中实现。您无需查找连接/身份验证发生的位置。

+0

谢谢。我已经开始关注c-client库。希望我能通过一些更多的努力来弄清楚一些事情。顺便说一句,该邮件列表只接收。只有订阅用户才能发送。 – Nands 2010-10-20 17:47:00

0

使用php_sockets实现了一个简单的库。希望能按需要采取行动。
删除邮件功能尚未添加。但你可以看看它是否满足你的需求。
试试看。 https://github.com/vmuthal/VivOAuthIMAP