diff --git a/lib/sinatra/browserid.rb b/lib/sinatra/browserid.rb index 39ba9b1..8b10f78 100644 --- a/lib/sinatra/browserid.rb +++ b/lib/sinatra/browserid.rb @@ -86,12 +86,11 @@ def self.registered(app) "audience" => audience, } data_str = data.collect { |k, v| "#{k}=#{v}" }.join("&") - res, body = http.post("/verify", data_str) + res = http.post("/verify", data_str) - # TODO: check res is a 200 - verify = JSON.parse(body) || nil - if verify.nil? - # JSON parsing error + if res.code =~ /^2\d{2}$/ + verify = ::JSON.parse(res.body) + else return end