我目前正在实施此库ember-simple-auth来管理我目前正在构建的emberjs应用程序(购物车)中的身份验证。
我遇到的困难是该库在登录后很好地管理了身份验证规则,但在登录之前没有。
所以这是场景: 应用程序必须与后端服务器通信,以便为每个用户检索会话令牌。这是必要的,以便用户可以使用会话数据临时保存其在服务器端的项目。购物车你会期待的东西。
然后,当用户准备好向前移动时,应用程序将显示登录屏幕,用户可以验证自己以检查他们的项目。
然而,我似乎无法弄清楚如何使用simple-auth来做到这一点。如果我创建一个只从服务器获取令牌ID的自定义验证器,它会将会话标记为已验证,并且不会要求登录authenticatedRoute。
一般来说,我试图做的是:
我希望以上信息足够清楚。任何提示和帮助将不胜感激。感谢。
答案 0 :(得分:1)
我可能只会在用户实际登录的位置使用Ember Simple Auth。在此之前,我不一定要使用会话令牌来识别篮子,我可能会明确地在服务器端创建一个篮子({{ 1}})然后通过REST接口(POST /basket
左右)添加到该接口。这样,您就不会在客户端和服务器之间共享状态,并且具有清晰的界面。您也不需要“滥用”Ember Simple Auth,这可能只会导致其他问题。当用户登录时,您只需将之前创建的篮子分配给该用户并继续。