class HttpSignatures::SigningString

Constants

REQUEST_TARGET

Public Class Methods

new(header_list:, message:) click to toggle source
# File lib/http_signatures/signing_string.rb, line 6
def initialize(header_list:, message:)
  @header_list = header_list
  @message = message
end

Public Instance Methods

header_value(header) click to toggle source
# File lib/http_signatures/signing_string.rb, line 17
def header_value(header)
  if header == REQUEST_TARGET
    request_target
  else
    @message.fetch(header) { raise HeaderNotInMessage, header }
  end
end
request_target() click to toggle source
# File lib/http_signatures/signing_string.rb, line 25
def request_target
  "%s %s" % [@message.method.downcase, @message.path]
end
to_str() click to toggle source
# File lib/http_signatures/signing_string.rb, line 11
def to_str
  @header_list.to_a.map do |header|
    "%s: %s" % [header, header_value(header)]
  end.join("\n")
end