-1

Ember アプリ (2.10) で認証を行おうとしています。私のワークフローは

  1. ユーザーがFacebookログインのボタンを押してから
  2. 私は torii を使用してアクセス トークンを取得しています /私のユーザー データベースは firebase にあります/
  3. 次に、facebook プロバイダーを使用してトークンを firebase.auth に送信します。JWTトークンを返します。

問題は、JWT トークンを取得したため、emberapp にログインする必要があることです。ここで鳥居オーセンティケーターをカスタマイズしようとしています。これをemberアプリに実装するにはどうすればよいですか。以下は私のオーセンティケーターです:

authenticate() {
return this._super(...arguments).then((torii) => {
    const serverTokenEndpoint = this.get('serverTokenEndpoint');
    return this.get('ajax').request(serverTokenEndpoint, {
        type: 'POST',
        data: {
        'type': torii.provider,
        'client_id': this.client,
        'token': torii.authorizationCode
        }
    }).then((token) => {
        var provider = new firebase.auth.FacebookAuthProvider();
        firebase.auth().signInWithPopup(provider).then(function(result) {
        // This gives Facebook Access Token.
        // JWT-token=result.user.Cd
        // JWT-token.iat at=result.user.ea.Sa
        // JWT-token-refresh = result.user.refreshToken
        console.log(result)
        //   token = result.user.Cd;
        // const expiresAt = this._absolutizeExpirationTime(result.user.ea.Sa);
        token = Ember.assign(token, { 'expires_at': result.user.ea.Sa });
        // this._scheduleAccessTokenRefresh(result.user.ea.Sa, expiresAt, result.user.refreshToken, torii);
        return Ember.assign(token, {'torii': torii});
        });
    });
    });  
}
4

2 に答える 2

1

ESA リポジトリでこのガイドを確認してください。鳥居とGithub認証をカバーしていますが、ユースケースの一般的な概念は同じです。

于 2017-01-10T11:27:15.913 に答える