0

Ember-CLI で Ember.SimpleAuth を使用してカスタム オーセンティケーターを作成する場合、カスタム オーセンティケーターの認証メソッドは、ログインしているユーザーを確立するために正確に何を返す必要がありますか? 以下は、現在存在するオーセンティケーターです。バックエンドに phalcon REST API を使用しているため、最終的には、このメソッドはその URL にアクセスしてサーバー側でユーザーを認証する必要があるようですが、ember.simpleauth がそれを実行するには、サーバーは何を返す必要がありますか?する必要がありますか?

import Ember from "ember";
import App from '../app';
import Base from "simple-auth/authenticators/base";

export default Base.extend({
    tokenEndpoint: 'login',

    restore: function(data) {
        console.log('ran resotre');
    },
    authenticate: function(credentials) {
        alert(credentials.identification);
        alert(credentials.password);
    },
    invalidate: function() {
        console.log('ran invalidate');
    }
});
4

1 に答える 1

0

私はEmber Simple Auth - APIを読みます

authenticate約束を返す必要があります。メソッド内で、その約束を解決または拒否する必要があります。解決された promise は認証の成功を示し、拒否された promise は認証の失敗を示します。これが、クイックauthenticate関数を構成する方法です。

 authenticate: function (credentials, options) {
    return new Ember.RSVP.Promise(function (resolve, reject) {
        var loginPromise = Ember.$.post(<token url goes here>, {
            username: credentials.identification,
            password: credentials.password
        });
        loginPromise.then(function (data) {
            resolve({
                token: data.token,
                userData: data.user
            });
        }, function (error) {
            reject(error);
        });
    });
}
于 2014-11-10T19:42:42.483 に答える