Module: JsonWebToken::Format::Base64Url

Defined in:
lib/json_web_token/format/base64_url.rb

Overview

Provide base64url encoding and decoding functions without padding, based upon standard base64 encoding and decoding functions that do use padding

Class Method Summary collapse

Class Method Details

.decode(str) ⇒ String

Returns with trailing ‘=’ padding added before decoding.

Examples:

Base64Url.decode("YmFy")
# => 'bar'

Parameters:

  • str (String)

    encoded as url_encode64

Returns:

  • (String)

    with trailing ‘=’ padding added before decoding



25
26
27
# File 'lib/json_web_token/format/base64_url.rb', line 25

def decode(str)
  Base64.urlsafe_decode64(base64_padding_added(str))
end

.encode(str) ⇒ String

Returns a urlsafe_encode64 string with all trailing ‘=’ padding removed.

Examples:

Base64Url.encode('foo')
# => 'Zm9v'

Parameters:

  • str (String)

Returns:

  • (String)

    a urlsafe_encode64 string with all trailing ‘=’ padding removed



16
17
18
# File 'lib/json_web_token/format/base64_url.rb', line 16

def encode(str)
  base64_padding_removed(Base64.urlsafe_encode64(str))
end