Sha256: adb7056a8bd681370ec3607b34116617ea94ffdb170f22091f6599c14df1fda2
Contents?: true
Size: 1.3 KB
Versions: 11
Compression:
Stored size: 1.3 KB
Contents
module HttpUtilities module Http module Cookies def handle_cookies(response) cookies = nil if (response && response.is_a?(Net::HTTPResponse)) cookie_fields = response.get_fields('Set-Cookie') if (cookie_fields && cookie_fields.any?) cookies = [] cookie_fields.each do |cookie| filtered_cookie = cookie.split('; ').first cookies << filtered_cookie end end elsif (response && response.is_a?(HttpUtilities::Http::Response)) cookies = (response.request && response.request.cookies) ? response.request.cookies : nil end return cookies end def format_cookies(cookies) cookie_string = "" cookies.each {|cookie| cookie_string += "#{cookie}; "} return cookie_string end def set_cookies(headers, cookies) if (cookies && cookies.any?) cookie_string = (cookies && cookies.is_a?(Array)) ? format_cookies(cookies) : nil if (cookie_string) cookie_hash = {'cookie' => cookie_string} headers = (headers && !headers.empty?) ? headers.merge(cookie_hash) : cookie_hash end end return headers end end end end
Version data entries
11 entries across 11 versions & 1 rubygems