首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >成员简单身份验证保存会话中的用户配置文件

成员简单身份验证保存会话中的用户配置文件
EN

Stack Overflow用户
提问于 2016-02-17 04:50:27
回答 1查看 153关注 0票数 0

我不明白为什么会话this.get('session').set('name', name);的方法set在重新加载页面后不能持久存在。我完全遵循了前面提到的here

我的代码

代码语言:javascript
复制
//controllers/authentification.js
import Ember from 'ember';

export default Ember.Controller.extend({

session: Ember.inject.service('session'),
actions: {
    authenticate() {
        var this2 = this;
        let {
            email, motDePasse
        } = this.getProperties('email', 'motDePasse');

        this.get('session').authenticate('authenticator:oauth2', email, motDePasse).then(function () {
            this2.store.queryRecord('membre', {
                membre: {
                    email: email
                }
            }).then(function (membre) {
                var nom = membre.get('nom');
                this2.get('session').set('nom', nom);
                console.log('name:', nom);
            });
        }).catch((reason) => {
            this.set('errorMessage', reason.error || reason);
        });
    }
}
});

对于session-store/sessions.js

代码语言:javascript
复制
import Cookie from 'ember-simple-auth/session-stores/cookie';

export default Cookie.extend();

控制器/应用程序.js

代码语言:javascript
复制
import Ember from 'ember';
import SessionService from 'ember-simple-auth/services/session';

export default Ember.Controller.extend({
    session: Ember.inject.service('session'),
    index: function () {
        this.transitionTo('index');
    }
});

template/application.js

代码语言:javascript
复制
<ul class="nav navbar-nav navbar-right">
{{#if session.isAuthenticated}}
   <li>nom :{{session.nom}}</li>
   <li><a {{action 'logout' on="click"}}>Deconnecter</a></li>
{{else}}
   {{#link-to 'authentification' tagName="li"}}<a href>Authentification</a>{{/link-to}}
{{/if}}
</ul>

在我第一次认证时,变量"nom“出现了,但是一旦我重新加载了页面,变量"nom”就消失了,但是会话静默isAuthenticated

EN

回答 1

Stack Overflow用户

发布于 2016-02-17 05:16:21

我已经找到了解决方案,我只需要使用

this2.get('session').set('.data.nom', nom);

而不是

代码语言:javascript
复制
this2.get('session').set('nom', nom);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35442707

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档