0

それともエラーになりますか?

例:

authClient = new FirebaseAuthClient(baseRef, function(error, user) { ... });

// Try to log in...
authClient.login('password', {email: 'some_email', password: 'some_password'});

// Before the callback from the previous line of code executes...
// Oh wait, I forgot to signup in the first place, let me do that:
authClient.createUser('some_email', 'some_password', function(error, user) { ... });
4

1 に答える 1

0

前のメソッドが完了する前にこれらのメソッドを呼び出すことは安全ですが、破損したデータを壊したり、例外をスローしたりすることはありませんが、ユーザーの状態によっては、予期しない (および非決定的な) 動作が発生する可能性があります。アカウントとセッション。

たとえば、(ブラウザの Cookie と localStorage を参照して) 既存のセッションが検出された場合、 はFirebaseAuthClientそれを再開しようとしますが、これには簡単な確認手順が含まれます。そのステップが完了する前に呼び出しをlogin行うと、ユーザーのアカウント ステータスに応じてさまざまな影響が生じます。

その例を続けると、アカウントが存在し、資格情報が正しい場合、既存のセッションが上書きされ、コールバックが 2 回 (既存のセッションに対して 1 回、新しいセッションに対して 1 回) 呼び出されます。アカウントが存在しない場合、または資格情報が正しくない場合、最初に正しいセッションのコールバックを 1 回受け取り、次に不正な資格情報を受け取った後にエラーが発生することがあります。

コードを構成する最も明確な方法を決定できるように、特定のユース ケースと希望するユーザー エクスペリエンスについてもう少し詳しくお聞かせください。それが役立つことを願っています!

于 2013-03-22T07:10:00.430 に答える