class MyBitcasa::ResponseMiddleware
Public Instance Methods
process_response(env)
click to toggle source
# File lib/my_bitcasa/response_middleware.rb, line 8 def process_response(env) # check status code case env[:status] when 200 # 200 OK when 401 # 401 Auhorization error raise AuthorizationError, "login required" else # other status raise ConnectionError, "response status code: #{env[:status]}" end # parse json case env[:body] when "OK" # OK string else # parse json begin env[:body] = JSON.parse(env[:body]) rescue => e e2 =ResponseFormatError.new("#{e.class}: #{e.message}") e2.set_backtrace(e.backtrace) raise e2 end end end