2010-10-17 98 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