Gibt es eine Möglichkeit, zu verhindern, dass ein Client eine Servermethode über die Browserkonsole aufruft?
Ich entnehme der Inoffiziellen Meteor-FAQ , dass dort ist nicht. Ich wollte nur überprüfen, ob das wirklich der Fall ist - die FAQ ist nicht wirklich spezifisch. Ich meine, gibt es keine "privaten" Methoden?
Beim Meteor können die von Meteor.methods beschriebenen "Methoden" alle vom Client aufgerufen werden. In diesem Sinne gibt es keine private
-Methoden, da der Zweck des RPC-Aufrufs darin besteht, dass der Client den Aufruf ausführt.
Wenn Sie eine 'private' Methode wünschen, können Sie eine gewöhnliche JavaScript-Methode verwenden. Wenn Sie die Methode mit var
definieren, ist sie nur innerhalb der Datei verfügbar und kann nicht vom Client aus aufgerufen werden.
entspricht:
%Vor%Oder Sie können es so definieren, dass es von Ihrem Server-Skript verwendet werden kann:
%Vor%Wenn Sie meinen, Sie möchten einen RPC-Methodenaufruf, der nur über den JavaScript-Code zugänglich ist, aber nicht über die Javascript-Konsole in Chrome, ist dies nicht möglich. Dies liegt daran, dass die Idee hinter Meteor alle RPCs vom Client sind nicht vertrauenswürdig & amp; Es gibt keine Möglichkeit zu unterscheiden, ob es von der Konsole kam oder nicht. Sie können die Meteor-Benutzerauthentifizierung oder Collection.allow oder Collection.deny Methoden, um unbefugte Änderungen auf diese Weise zu verhindern.
Tags und Links meteor