Repository URL to install this package:
|
Version:
0.9.11 ▾
|
module ActionSprout::Facebook
class BadResponse < Response
def self.from_response(response)
self.new response.http_status, response.parsed_response, response.headers, response.graph
end
def message
error_val 'message'
end
def fb_code
error_val 'code'
end
def fb_subcode
error_val 'error_subcode'
end
def type
error_val 'type'
end
def authentication_error?
AUTHENTICATION_ERROR_CODES.include? fb_code
end
def transient?
error_val 'is_transient'
end
# I've seen error code 1 as either:
#
# * An unknown error occurred
# * Please reduce the amount of data you're asking for, then retry your request
def unknown?
fb_code == 1
end
def page_migrated?
fb_code == 21
end
def not_found?
(fb_code == 100 && fb_subcode == 33) || fb_code == 803
end
private
AUTHENTICATION_ERROR_CODES = [102, 190, 450, 452, 2500]
def error_val(key)
parsed_response.dig 'error', key
end
end
end