有没有办法阻止客户端从浏览器控制台调用服务器方法?
我从非官方流星常见问题解答中得知,没有.我只是想检查一下是否确实如此 - 常见问题解答并不是特定的.我的意思是没有"私人"方法吗?
Aks*_*hat 17
在meteor中,Meteor.methods描述的'方法'都可以从客户端调用.从这个意义上讲,没有private方法,因为RPC调用的目的是让客户端进行调用.
如果你想要一个'私人'方法,你可以使用普通的JavaScript方法.如果使用定义方法var,则只能在文件中访问,并且无法从客户端调用.
var yourmethod = function() {
...
}
Run Code Online (Sandbox Code Playgroud)
这相当于:
function yourmethod() {
...
}
Run Code Online (Sandbox Code Playgroud)
或者您可以定义它,以便您的任何服务器脚本都可以使用它:
yourmethod = function() {
....
}
Run Code Online (Sandbox Code Playgroud)
如果你的意思是你想要一个只能从javascript代码访问的RPC方法调用,而不是从chrome中的javascript控制台访问,这是不可能的.这是因为meteor背后的想法是来自客户端的所有 RPC都不受信任,并且无法区分它是否来自控制台.您可以使用meteor用户身份验证或Collection.allow或Collection.deny方法来防止任何未经授权的更改.
| 归档时间: |
|
| 查看次数: |
1841 次 |
| 最近记录: |