0

我在主干模型中创建了一个方法来进行授权。它正确选择了用户,问题是出错时会调用成功授权的回调...我似乎无法解决此问题...

class Notes.Models.User extends Backbone.Model
  url: '/api/account'
  authorize: ->
    jQuery.ajax(
      type: 'POST'
      url: '/api/sessions.json'
      data:
        email: @get('email')
        password:  @get('password')
    ).success( (response) ->
      alert('success!')
      console.log(response)
    ).error( (response) ->
      alert('error')
    )

和导轨部分

def create
    @user = User.authenticate params[:email], params[:password]
    if @user
      create_user_session @user
      respond_with @user, location:'/'
    else
      respond_to do |format|
        format.json { render json: { error: 'invalid email or password' } }
      end
    end
  end

你能帮我吗?

4

1 回答 1

1

jQuery ajax 成功和错误回调基于 HTTP 状态代码。否则它怎么知道请求是否成功。

所以你应该像这样返回一个错误的http状态码:

format.json { render json: { error: 'invalid email or password' }, status: 401 }
于 2013-03-19T11:07:25.057 回答