現在、互換性の理由から、Meteor のアカウント機能のすべてを使用することはできません。私のシステムは非常に単純ですが、必要な認証作業を実行する「認証」メソッドをサーバーに公開し、成功した場合はMeteor.userId()
viaの値を設定しますthis.setUserId
。唯一の問題はthis.setUserId
、サーバーで呼び出したときに、クライアントに反映されないように見えることです。Meter.userId()
クライアントでは引き続き null を返しますが、サーバーでは正しい値を返します。はサーバーのみの機能であるためthis.setUserId
、「authenticate」メソッドが返された後にクライアントで正しいユーザー ID を設定する方法について途方に暮れています。アイデア?
質問する
506 次
2 に答える
3
userId
ユーザーを認証するには、 を設定するだけではありません。カスタム認証を行う方法については、次の例を確認してください。
- https://github.com/tmeasday/meteor-accounts-anonymous (ブラウザー セッションごとにユーザーを作成します)
- https://github.com/mizzao/meteor-accounts-testing (パスワードなしでユーザーを作成します)
2枚目は私の例です。accounts
独自の操作をすべて展開するのではなく、基本パッケージによって提供される機能を構築することを強くお勧めします。
編集: OP の応答に基づいて、認証に関するものではない別の種類の操作を行うことに興味があるかもしれません。以下を参照してください。
于 2013-06-26T04:17:39.580 に答える
2
Meteor のドキュメントには「this.setUserId()」がサーバーのみとしてリストされているという事実にもかかわらず、現在はクライアントでも機能するため、この問題を解決することになりました。
于 2013-10-29T05:18:58.970 に答える