foreach(address, port = nil, account, password, isapop=false) {|mail| .... } -> ()[permalink][rdoc][edit]-
POP セッションを開始し、サーバ上のすべてのメールを取りだし、個々のメールを引数としてブロックを呼びだします。
個々のメールは Net::POPMail のインスタンスで渡されます。
port に nil を渡すと、適当なポート(通常は110、SSL利用時には 995)を使います。
以下のコードと同様の処理をします。
使用例require 'net/pop' Net::POP3.start(address, port, account, password, isapop=false) {|pop| pop.each_mail do |m| yield m end }require 'net/pop' Net::POP3.foreach('pop.example.com', 110, 'YourAccount', 'YourPassword') do |m| file.write m.pop m.delete if $DELETE end- [PARAM]
address: - POP3サーバのホスト名文字列
- [PARAM]
port: - 接続するPOP3サーバのポート番号
- [PARAM]
account: - アカウント名文字列
- [PARAM]
password: - パスワード文字列
- [PARAM]
isapop: - 真でAPOPを利用します
- [EXCEPTION]
TimeoutError: - 接続がタイムアウトした場合に発生します
- [EXCEPTION]
Net::POPAuthenticationError: - 認証に失敗した、もしくはAPOPを利用しようとしたがサーバがAPOPを提供していない場合に発生します
- [EXCEPTION]
Net::POPError: - サーバが認証失敗以外のエラーを報告した場合に発生します
- [EXCEPTION]
Net::POPBadResponse: - サーバからの応答がプロトコル上不正であった場合に発生します
[SEE_ALSO] Net::POP3.start, Net::POP3#each_mail
- [PARAM]