RailsコンソールでRedisSessionStoreのセッションを取得し、中身を見る方法


また必要になりそうなのでメモ

  • redis-session-store
  • セッションIDはブラウザのCookieを見て事前に知っている想定


ActionMailerでメール送信方法を自作するためにコードを読んでみる


SendGridのWeb API v3 を使ってActionMailerでメール送信する gem を作成した時にActionMailer周りのコードを読んだのでメモ。

ちなみにActionMailerでSendGridを使う場合の公式の推奨は、SMTP APIを使う方法 と思われる。SMTP APIを使う際に気になる点として、ユーザーIDとパスワードを指定しないといけない点がある。一方、Web APIでは管理画面で発行したAPI keyを指定する。API keyは環境ごとに複数発行可能で、かつ権限をカスタマイズすることもできる。情報が漏洩した際の対応のしやすさはWeb APIの方が優っていると考え、採用したかった。

まとめ

  • #initialize, #settings, #deliver! の3つのメソッドを実装した自作メール送信クラスを作成
  • 自作クラスをRails起動時の設定か、ActionMailer::Baseを継承したクラスでセット
  • ヘッダーや本文がセットされた Mail::Message のインスタンスが #deliver! の引数に渡されるので、このインスタンスから必要な情報を集めてメール送信処理を実装すればOK

続きを読む →