2

我正在使用用 Rails 编写的客户端应用程序使用 Rails API。如果用户未通过身份验证,那么我必须显示登录页面。我创建了一种仅从一个 Ruby 类进行 API 调用的结构。现在从那个 Ruby 类中,如果响应状态是 401,那么我必须显示登录页面。有没有办法将用户从我的 Ruby 类重定向到登录页面?

这是我的客户代码


class Client
  def execute(method, url, params)
    response = case method
               when :get
                 HTTParty.get(url, query: params)
               when :post
                 HTTParty.post(url, body: params)
               when :put
                 HTTParty.put(url, body: params)
               when :delete
                 HTTParty.delete(url, body: params)
               else
                 nil
               end
    if response.status == 401
      # should redirect to login page
    else
      # Send result to caller which will parse it and send back to the controller action who called it
    end
  end

end

4

1 回答 1

2

我通过引发自定义异常并在 ApplicaionController 中捕获它来解决这个问题。从那里我可以轻松地重定向到登录页面。

于 2013-06-21T07:23:55.113 回答