2013-02-27 3 views
6

thisビデオによると、流星のメソッドは、クライアントとサーバーで利用可能なmodels.jsファイルで定義する必要があります。なぜMeteorメソッドはmodels.jsファイルに入っていますか?

クライアントがサーバー上で呼び出したセキュアなプロシージャであると仮定されるメソッドは、なぜmodels.jsファイルで定義されていますか?クライアントはMeteor.callでメソッドを呼び出します。したがって、models.jsではなく、サーバー上でメソッドを定義するのは意味がありませんか?

答えて

2

"model.js"ファイルにメソッドを配置する必要はありません。どこにでも置くことができます。ビデオのファイルmodel.jsに名前を付けるだけです。

Meteor.methodsは「Anywhere」メソッドであり、サーバーとクライアントの両方に存在することができることを意味します。 the docsを見ると、その違いがわかります:

クライアントのリモートから呼び出すことのできる関数を定義しています。クライアント上のメソッドを呼び出す

[...]

は、同じ名前のサーバーの方法に関連するスタブ関数を定義します。

Meteorのメソッドやその他の機能がどのように機能するかをデモしているので、特にメソッドをサーバーに配置することには関係しませんでした。

0

あなたが投稿したビデオは、メテオができることのほんの一部にすぎません。チュートリアルではありません。 documentationは、メソッドがどのように機能するかを説明します。クライアントの場合、メソッドはスタブされるだけです。

メソッドをサーバーでのみ使用できるようにすると、メソッドはスタブされません。あなたはまた、流星のconceptsを読む必要があります。