Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
列出Meteor.methods()注册的Meteor方法?_Meteor - Fatal编程技术网

列出Meteor.methods()注册的Meteor方法?

列出Meteor.methods()注册的Meteor方法?,meteor,Meteor,想知道是否有办法获得已注册的当前Meteor.methods的列表 例如,如果按如下方式注册post方法: Meteor.methods({ post: function() { //code } }); 有没有办法访问这些方法的列表?理想情况下,它是通过一个方法实现的,但如果它存储在一个可访问的变量中,比如Meteor.\uuu方法,它也可以工作 我在浏览器中浏览了文档和Meteor global,但没有发现任何有用的东西。有什么想法吗?在meteor的服务器端挖掘了更多信息

想知道是否有办法获得已注册的当前Meteor.methods的列表

例如,如果按如下方式注册post方法:

Meteor.methods({
  post: function() {
    //code
  }
});
有没有办法访问这些方法的列表?理想情况下,它是通过一个方法实现的,但如果它存储在一个可访问的变量中,比如Meteor.\uuu方法,它也可以工作


我在浏览器中浏览了文档和Meteor global,但没有发现任何有用的东西。有什么想法吗?

在meteor的服务器端挖掘了更多信息后,这些方法似乎存储在meteor.default\u Server.method\u handlers数组中,该数组在服务器上可访问,但在客户端上不可访问


在客户端公开it的唯一方法似乎是注册方法服务器端,然后返回密钥列表。

在客户端,您可以执行以下操作:

Meteor.connection._methodHandlers

它为您提供了函数名的字典。

它不会向客户端公开,因为这可能会打开一个潜在的安全漏洞。它没有列出方法。@Avalanch1它为我提供了。可能您的方法实际上没有注册或其他什么?这将只列出具有客户端存根的方法。如果该方法只在服务器上注册,那么它不会出现在这里,您需要在服务器上运行它(参见Kelly Copley的回答)