2

我用 Ember.js 和 Rails 制作了一个登录系统。所以我尝试为未经身份验证的用户进行重定向。我不知道我必须在哪里进行重定向(应用程序控制器或应用程序路由?)。这是我的身份验证系统:

window.AuthApp = Ember.Object.extend(Ember.Evented).create
authToken: null
currentUserId: null

signIn: (data) ->
    if data == null
        data = {}
    if data['remember'] == true
        cookie = true
    $.ajax 'api/login',
        type: 'POST'
        dataType: 'JSON',
        contentType: 'application/json; charset=utf-8'
        data: JSON.stringify(data)
        error: ->
            alert('Error signIn')
        success: (data) ->
            console.log(data)
            AuthApp.set 'authToken', data['auth_token']
            if cookie == true
                $.cookie 'remember_token', data['auth_token'],
                    expires: 7

AuthApp.Module.RememberMe = Ember.Object.create
recall: ->
    if ($.cookie('remember_token'))
        data = {}
        data['auth_token'] = $.cookie('remember_token')
        AuthApp.signIn(data)
        return true

如您所见,我只是调用 AuthApp.Module.Remember.recall() 来检查用户是否已连接。谢谢你的帮助

4

1 回答 1

0

你应该看看路由器整容。设计目标之一是降低基于身份验证的应用程序的实施难度。

https://gist.github.com/machty/5723945

于 2013-06-19T18:18:43.310 回答