Ember Simple Auth Device在LocalStorage中保留身份验证信息

时间:2015-04-17 22:12:28

标签: ruby-on-rails authentication ember.js devise

我似乎无法找到一个直接的答案来处理代码示例,但是我使用的是simple-auth 0.7.3。使用ember-clisimple-auth-devise。 我可以正常验证但是一旦刷新页面会话就会被杀死。我看到一个上一篇文章,这个人没有合适的对象,但是当对象是正确的情况呢?

{"authenticator":"simple-auth-authenticator:devise","user_id":53,"user_token":"Vm2TwefZCwaAo8hfg&pT","user_email":"user9@redphone.com"}

我不是平局中最锋利的刀,但我希望有人可以了解为什么会话被杀,以及如何/在何处阻止它。

1 个答案:

答案 0 :(得分:2)

根据localstorage中的内容:

{"authenticator":"simple-auth-authenticator:devise","user_id":53,"user_token":"Vm2TwefZCwaAo8hfg&pT","user_email":"user9@redphone.com"}

Ember simple auth正在使用" user"作为配置中的resourceName: Ember Simple Auth Devise

当服务器端点期望超过电子邮件密码时,通常会添加resourceName。在这种情况下,端点需要user_email,user_password。

默认情况下刷新页面时,简单身份验证会检查localstorage 电子邮件,令牌。您还必须将其更改为user_email,user_token。

在配置中:

ENV['simple-auth-devise'] = {
authorizer: 'simple-auth-authorizer:devise',
serverTokenEndpoint:         ENV.APP.HOST+'/' + ENV.NAMESPACE +'/users/sign_in',
resourceName:                'user',
tokenAttributeName:          'user_token',
identificationAttributeName: 'user_email'};

这解决了持久性问题。