class Graphql::Voyager::Rails::Config
Constants
- CSRF_TOKEN_HEADER
- DEFAULT_HEADERS
Attributes
csrf[RW]
headers[RW]
@example Adding a header to the request
config.headers["My-Header"] = -> (view_context) { "My-Value" }
@return [Hash<String => Proc>] Keys are headers to include in GraphQL requests, values are `->(view_context) { … }` procs to determin values
Public Class Methods
new(csrf: true, headers: DEFAULT_HEADERS)
click to toggle source
# File lib/graphql/voyager/rails/config.rb, line 25 def initialize(csrf: true, headers: DEFAULT_HEADERS) @headers = headers.dup @csrf = csrf end
Public Instance Methods
resolve_headers(view_context)
click to toggle source
Call defined procs, add CSRF token if specified
# File lib/graphql/voyager/rails/config.rb, line 31 def resolve_headers(view_context) all_headers = DEFAULT_HEADERS.merge(headers) if csrf all_headers = all_headers.merge(CSRF_TOKEN_HEADER) end all_headers.each_with_object({}) do |(key, value), memo| memo[key] = value.call(view_context) end end