2013-06-20 3 views
15

登録されている現在のMeteor.methodのリストを取得する方法があるかどうか不思議です。例えばリストMeteor.methods()に登録されているメテオメソッド?

POSTメソッドは、そのように登録されている場合:

Meteor.methods({ 
    post: function() { 
    //code 
    } 
}); 

は、これらのメソッドのリストにアクセスする方法はありますか?理想的にはメソッドを介して行われるが、Meteor .__メソッドのようなアクセシビリティ変数に格納されていれば同様に機能するだろう。

私はドキュメントとMeteorをブラウザでグローバルにコーディングしましたが、役に立たないものは何も見つかりませんでした。何か案は?

答えて

14

Meteor.connection._methodHandlers 

それはあなたの関数に関数名の辞書を提供します。

+2

メソッドがリストされません。 – avalanche1

+0

@ avalanche1それは私のためです。あなたのメソッドが実際に登録されているのではないのでしょうか? –

11

流星のサーバー側をもっと掘り下げた後では、メソッドはサーバー上でアクセス可能でありクライアント上ではアクセスできない配列Meteor.default_server.method_handlersに格納されているようです。

クライアント側を公開するには、メソッドのサーバー側を登録してから、キーのリストを返すようにしてください。あなたが行うことができ、クライアント上で

+2

潜在的なセキュリティ上の脆弱性が発生する可能性があるため、クライアント側に公開されません。 – Marz

関連する問題