class RequestProxy
Public Class Methods
call(request, url, data, cookies)
click to toggle source
# File lib/request_proxy.rb, line 4 def self.call(request, url, data, cookies) proxy = new(request, url, data, cookies) proxy.call end
new(request, url, data, cookies)
click to toggle source
# File lib/request_proxy.rb, line 9 def initialize(request, url, data, cookies) @method = request.method @url = url @data = data @cookies = cookies @headers = request.headers end
Public Instance Methods
call()
click to toggle source
# File lib/request_proxy.rb, line 17 def call options = { method: @method, url: url, cookies: @cookies, headers: headers_for_booking_app, } options[:payload] = @data unless http_get? RestClient::Request.execute(options) do |response, _request, _result, &_block| WrappedResponse.new(response) end end
Private Instance Methods
headers_for_booking_app()
click to toggle source
# File lib/request_proxy.rb, line 43 def headers_for_booking_app { accept: @headers['Accept'], referer: @headers['HTTP_REFERER'], 'X-CSRF-Token' => @headers['X-CSRF-Token'] } end
http_get?()
click to toggle source
# File lib/request_proxy.rb, line 33 def http_get? @method == :get end
url()
click to toggle source
# File lib/request_proxy.rb, line 37 def url url = @url url += "?#{@data.to_query}" if http_get? url end