こんにちは!kossyです!
さて、今回はRubyの標準モジュールである「securerandom」を使って、
トークンを作成する手順についてブログに残してみたいと思います。
環境
Ruby 2.5.1
Rails 5.2.3
MacOS Mojave
libディレクトリにtoken_generator.rbを作成
トークンの生成は色々な箇所で使うことになるかと思いますので、
モジュールにしておきます。
require 'securerandom' module TokenGenerator def self.generate_token(num = 20) "#{SecureRandom.urlsafe_base64(num)}" end end
このように実装することで、
token = Tokengenerator.generate_token
という感じでどこでもトークンが作成できるようになります。
SecureRandom.urlsafe_base64は、urlセーフなBase64方式の文字列を生成します。
URLセーフやBase64については下記が参考になりました。
qiita.com
qiita.com