0

我在 AngularJS 中使用 Restangular 连接到我的 RAILS API 后端。我可以使用我的标准 RABL api 服务中的 Restangular 毫无问题地抓取数据,但是当我尝试 POST 到我的自定义 Devise 登录/注销 api 控制器时,O 似乎没有得到回应。

我在这里遵循了这段代码:http: //lucatironi.github.io/tutorial/2012/10/15/ruby_rails_android_app_authentication_devise_tutorial_part_one/

  def create
    warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#failure")
    render :status => 200,
           :json => { :success => true,
                      :info => "Logged in",
                      :data => { :auth_token => current_user.authentication_token } }
  end

我的第一个猜测是 RABL 做对了,上面创建方法中的渲染不适用于 Restangular。我没有用于 create 方法的 RABL 模板,我需要一个吗?

非常感谢您对此的任何帮助。

4

1 回答 1

1

您可以在控制器顶部添加一个 before 过滤器来验证所有方法,方法是添加:before_filter :authenticate_user!

如果您希望在方法本身中进行授权,只需执行authenticate_user!. 我尝试致电监狱长进行身份验证,但最终遇到了许多其他问题。

对于 RABL 模板,是的,您需要一个。

于 2013-06-22T07:47:44.127 回答