2010-10-05 64 views
2

隨着我的Ruby腳本:紅寶石IMAP登錄錯誤異常

imap = Net::IMAP.new('imap.gmail.com') 
imap.login("[email protected]", password) 

我得到以下異常:

A connection attempt failed because 
the connected party did not properly 
respond after a period of time, or 
established connection failed because 
connected hos has failed to respond. - 
connect(2) 

有什麼不對?

回答

6

You need to connect using SSL on port 993

因此你的代碼應該是這樣的:

imap = Net::IMAP.new('imap.gmail.com', 993, true) 
imap.login("[email protected]", "password") 
+0

我得到異常: 所以SSL_connect退換= 1個錯誤號= 0狀態= SSLv3的讀取服務器證書B:certificat E驗證失敗 – Oksana 2010-10-05 11:51:42

+1

有可能是在不匹配證書(例如證書上的cn與imap.gmail.com不一樣)或者證書籤名者可能不在您的商店中。如果你想忽略SSL問題,試試這個:'imap = Net :: IMAP.new('imap.gmail.com',993,true,nil,false)'。 Doc鏈接:http://ruby-doc.org/stdlib/libdoc/net/imap/rdoc/classes/Net/IMAP.html#M000754 – Brian 2010-10-05 15:18:02

+2

@Oksana - 順便說一下,忽略SSL錯誤並不是一個好主意。你真的應該試着找出你爲什麼得到它們並解決核心問題。但是,至少你知道你的代碼有效,其他地方有問題。 – Brian 2010-10-06 22:26:42