使用backbone.js使用Devise,Rails进行身份验证

时间:2014-01-25 17:55:55

标签: ruby-on-rails backbone.js devise

我是骨干新手并且一直试图取消认证,但徒劳无功。请在这里帮忙;

我的观点看起来像这样;

mama.Views.UserSessionsIndex = Backbone.View.extend({

  template: JST['user_sessions/index'],
  render: function() {      
    this.$el.html( this.template );
    return this;
  },
  events: {
            "click #sign_in_button": "signIn"
        },  

  signIn: function(event) {
    var userSession = new Skymama.Models.UserSession;
    userSession.set({email: $('#email_address').val(), password: $('#password').val()});
    userSession.save({
        success: function(model, response) {
           alert("response"); 
        },

        error: function(model, response){
            alert("response");
        }
    });
  }

});

但是,对于授权错误,我收到此回复401 Unauthorized。我如何处理这些响应,登录客户端并重定向它们。 谢谢

2 个答案:

答案 0 :(得分:1)

如果您最终期望重定向,请不要使用Backbone模型,因为JSON响应不会让您重定向。

相反,在此Backbone视图中,显示传统的Devise表单并发送HTML请求。

答案 1 :(得分:1)

您需要一种RESTful方式从Backbone登录到Rails(Devise)。

  

教程1:http://joshhuckabee.com/integrating-devise-backbonejs

     

教程2:http://chasseurmic.github.io/chasseurmic/blog/2013/02/13/restful-api-authentication/

准备RESTful配置/控制器。之后,使用POST调用,您可以使用Rails进行身份验证。