lib/fanforce/api/response.rb in fanforce-api-0.14.9 vs lib/fanforce/api/response.rb in fanforce-api-0.15.0
- old
+ new
@@ -3,11 +3,13 @@
def self.process(response, request, requested_url, requested_params)
raise Fanforce::API::ServerError.new(response, request, requested_url, requested_params) if response.code > 201
begin response_hash = Fanforce::Utils.decode_json(response)
rescue Exception => e; raise Fanforce::API::DecodingError.new(e, response, request, requested_url, requested_params) end
- if response_hash[:results]
+ if !response_hash.is_a?(Hash)
+ raise Fanforce::API::DecodingError.new('Server did not send a valid hash.', response, request, requested_url, requested_params)
+ elsif response_hash[:results]
Fanforce::API::Results.new(response_hash, response, request, requested_url, requested_params)
else
Fanforce::API::Result.new(response_hash, response, request, requested_url, requested_params)
end
end
@@ -69,10 +71,10 @@
def curl_command
@curl_command ||= Fanforce::Utils.curl_command(@request.method, @requested_url, @requested_params)
end
- def body;
+ def body
@response.to_s
end
def current_results
@current_results ||= @response_hash[:current_results]