用户身份验证测试的ActiveRestClient :: HTTPServerException

时间:2014-08-06 16:59:44

标签: ruby-on-rails ruby ruby-on-rails-4 rspec active-rest-client

当我为用户postman试用authentication时,它的效果非常好。

请求:

{"email" : "shane@shane.com", "password": "123"}

响应:

{
  "token": "some-token"
}

但是当我尝试创建测试登录时。我得到ActiveRestClient::HTTPServerException: ActiveRestClient::HTTPServerException

@login = User.login(FactoryGirl.create(:user, 
          email: "shane@shane.com", password: "123"));

为什么我得到ActiveRestClient :: HTTPServerException?。

1 个答案:

答案 0 :(得分:2)

ActiveRestClient documentation建议捕获此类错误以检查服务器响应:

begin
  User.login(FactoryGirl.create(:user, email: "shane@shane.com", password: "123"))
rescue ActiveRestClient::HTTPClientException, ActiveRestClient::HTTPServerException => e
  Rails.logger.error("API returned #{e.status} : #{e.result.message}")
end

如果API响应是错误(4xx或5xx),您将能够在Rails日志中检查它