class DnB::Direct::Two

Constants

BASE_URL

Attributes

api_base_url[RW]
conn[RW]
password[RW]
token[RW]
username[RW]

Public Class Methods

api_token() click to toggle source

Fetches the token from the authorization service.

# File lib/dnb/direct/two.rb, line 11
def api_token
    raise ArgumentError, 'username is missing' if username.blank?
    raise ArgumentError, 'password is missing' if password.blank?
    response = connection.post do |req|
        req.url '/Authentication/V2.0'
        req.headers['x-dnb-user'] = username
        req.headers['x-dnb-pwd'] = password
    end
    response.headers['Authorization']
end

Private Class Methods

connection() click to toggle source
# File lib/dnb/direct/two.rb, line 24
def connection
    @conn ||= Faraday.new(connection_options) do |faraday|
        faraday.request :url_encoded # form-encode POST params
        faraday.response :logger                  # log requests to STDOUT
        faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
    end
end
connection_options() click to toggle source
# File lib/dnb/direct/two.rb, line 32
def connection_options
    {
        url: BASE_URL,
        headers: {
            content_type: 'application/json',
            accept: 'application/json'
        }
    }
end