shitou's blog 
Home About Feed | MIX BOY 塌客

Tags "mail"

15
Jan

用ruby连接gmail发送邮件 by shitou

0

http://i4y.jsfirm.cn/photo/image/7/medium/logo1.gif做开发的平时可能需要利用程序连接邮件服务器发送邮件,这样需要一定条件才行的,虽然shitou有自己的邮件服务器可用,还是想试下gmail, 谁让google那么NX呢, 而且gmail也是开放的,为coder提供了很多测试的条件, 今天突然想到想在blog里加入发送文章到邮箱的功能,因为平时shitou就有这种需求,看到好的文章就想收藏下来,慢慢的浏览器的收藏夹都爆掉了,今天就用gmail来实现吧, 语言用的是ruby


因为ruby1.8.*的版本都不支持TLS(就是Transfer Layer Secure)连接加密,而gmail要求必须使用加密连接, 所以就得先解决这个问题啦,可以安装tlsmail gem就行了, 当然前提是你的现有gmail的注册账号啦, 下面是code, smtp_gmail.rb:


#use Unicode
$KCODE = 'u'
require 'jcode'

require 'rubygems'
require 'action_mailer'
require 'tlsmail'
#need install tlsmail gem to support TLS connect
Net::SMTP.enable_tls(OpenSSL::SSL::VERIFY_NONE)

ActionMailer::Base.smtp_settings = {
  :address => 'smtp.gmail.com',    
#default: localhost
  :port => '25',                   
#default: 25
  :user_name => 'mytake6@gmail.com',
#login name
  :password => 'mypwd',       
#login password
  :authentication => :login        
#:plain, :login or :cram_md5
}
class SimpleMailer < ActionMailer::Base
  def simple_message(recipient, mail_subject, mail_body)
    from 'mytake6@gmail.com'
    recipients recipient
    subject mail_subject
    body mail_body
  end
end

SimpleMailer.deliver_simple_message 'lilei@16ds.com', 'test mail', 'hello, from script mail'


上面的authentication用:login就行, 因为设置了Net::SMTP.enable_tls(OpenSSL::SSL::VERIFY_NONE), 所以在连接时会自动启用TLS的, 这里用的是ActionMailer, 没有使用更底层的封装Net::SMTP, 当然用Net::SMTP也是很简单的, 就不多说了,

现在就可以测试下了

#ruby smtp_gmail.rb

 

文档: http://agilewebdevelopment.com/plugins/net_smtp_tls_support

Tags: mail

2009-01-15 16:40:32, 769 reviews

send to mailbox

Your email:

Tags

U-ka saegusa IN db command Mai Kuraki Norah Jones log iPhoneException ACG Mac Safari objective-c CouchDB LVS AJAX debian 推荐 AMQP google mail bug gettext Erlang 北京 iptables 架构 tips mysql backup function 我看 postfix 监控 SEO cache Etag memcache thread 进程 线程 无锡 yield file column mixboy xml rss gems ruby shitou shell lighttpd 安全 csrf 公司 nginx linux 模块 apache webserver 朋友 大学 生活 尼古拉斯凯奇 movie 文件同步 笑笑 歌词 auto complete plugin rails music ubuntu blog

Category

  • iPhone[17]
  • Erlang[4]
  • google[8]
  • 生活[38]
  • 音乐[11]
  • 电影[11]
  • linux[20]
  • web server[6]
  • mail server[3]
  • cluster[1]
  • system manage[5]
  • ruby[18]
  • ruby on rails[27]
  • 开源[3]

Episode

  • iPhoneException
  • shell
  • thread
  • memcache

Recent Comments

  • я считаю: превосходно. мамба интим знакомс...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • [b]Comprar vardenafil 20mg en Mexico Sin Receta...
  • я думаю: восхитительно.. познакомлюсь ради...

Popular Posts

  • MySQL Innodb备份
  • 准备开始学习Erlang了(恶狼, 二郎..)
  • Lighttpd配置参数
  • iPhone上的HelloWorld终于跑起来了
  • Etag和Expire

Recommended Posts

  • Mai Kuraki -永远より ながく
  • U-ka saegusa IN db Final Best
  • Heaven Can Wait - Charlotte Gainsbou
  • Ruby遍历MemCached的key
  • Norah Jones - The fall
  • 请记得仰望梦想的姿势
  • Shell: 统计MySQL InnoDB表的大小
  • Rails Benchmark
  • 发送异常到邮箱
  • I Miss Nobody
  • Music4u, Vol. 1
  • my macbook
  • Mai Kuraki-Beautiful
  • 10首最伤情英文歌曲精选
  • Mai Kuraki - PUZZLE/Revive

Friends' blogs

  • levy
  • sphance
  • andreas

Login

   注册

留言 查看留言

留言

   取消

留言 查看留言


Statistics

  • 访问次数: 51665
  • 今天访问: 132
  • 日志: 172
  • 评论: 138
  • 音乐: 9
  • 用户: 150


 

just DO NOT support IE

close