Asp Forum
Home
|
Login
|
Register
|
Search
Forums
>
comp.lang.ruby
undefined method `mails' for #
(NoMethodErro
Frioffol Friofool
11/10/2006 7:08:00 PM
Hello,
I'm trying to do a method to get mail via pop3 server.
I created the following script but i receive this message during
executio :
testmail.rb:12: undefined method `mails' for #<Net::POPMail 1>
(NoMethodError)
#!/usr/bin/env ruby
require 'net/pop' # I renamed the file from pop.rb to pop_ssl.rb to
ensure I was requiring the correct version
username = 'info@host.com'
password = 'pass'
#Net::POP3.enable_ssl(OpenSSL::SSL::VERIFY_NONE)
conn = Net::POP3.new('pop.host.com',110)
conn.start(username,password)
conn.mails.each do |pop|
msg = pop.mails[0]
# Print the 'From:' header line
puts msg.header.split("\r\n").grep(/^From: /)
# Put message to $stdout (by calling <<)
puts "\nFull message:\n"
msg.all($stdout)
end
maybe a lib problem ?
thx for your answer...
--
Posted via
http://www.ruby-...
.
1 Answer
Stefano Crocco
11/10/2006 9:41:00 PM
0
There's a mistake in your code. conn.mails return an array of the mails
on the server, i.e an array of Net::POPMail objects. The mails method,
instead, is a method of class Net::POP3. To make your code work, simply
substitute the pop parameter of the block with msg and remove the first
line of the block:
conn.mails.each do |msg|
# Print the 'From:' header line
puts msg.header.split("\r\n").grep(/^From: /)
# Put message to $stdout (by calling <<)
puts "\nFull message:\n"
msg.all($stdout)
end
You can also use the each (or each_mail) methods of Net::POPMail, which
also iterate on the mails:
conn.each_mail do |msg|
# Print the 'From:' header line
puts msg.header.split("\r\n").grep(/^From: /)
# Put message to $stdout (by calling <<)
puts "\nFull message:\n"
msg.all($stdout)
end
--
Posted via
http://www.ruby-...
.
Servizio di avviso nuovi messaggi
Ricevi direttamente nella tua mail i nuovi messaggi per
undefined method `mails' for #
(NoMethodErro
Inserendo la tua e-mail nella casella sotto, riceverai un avviso tramite posta elettronica ogni volta che il motore di ricerca troverà un nuovo messaggio per te
Il servizio è completamente GRATUITO!
x
Login to ForumsZone
Login with Google
Login with E-Mail & Password