要求没有在服务器端Meteor方法中定义?

我有一个meteor方法,我只在server文件夹中定义。

服务器/ methods.js

 Meteor.methods({ locationInfoByZipcode: function(zipcode){ check(zipcode, String); var https = require('https'); }, }); 

我在客户端调用它:

 Meteor.call("locationInfoByZipcode", "94043", function(error, response){ console.log(error); console.log(response); }); 

这是服务器控制台中的错误:

 I20150612-19:48:28.092(-7)? Exception while invoking method 'locationInfoByZipcode' ReferenceError: require is not defined I20150612-19:48:28.092(-7)? at [object Object].Meteor.methods.locationInfoByZipcode (app/server/meteor_methods.js:109:15) I20150612-19:48:28.092(-7)? at maybeAuditArgumentChecks (packages/ddp/livedata_server.js:1617:1) I20150612-19:48:28.092(-7)? at packages/ddp/livedata_server.js:648:1 I20150612-19:48:28.092(-7)? at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1) I20150612-19:48:28.093(-7)? at packages/ddp/livedata_server.js:647:1 I20150612-19:48:28.094(-7)? at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1) I20150612-19:48:28.094(-7)? at [object Object]._.extend.protocol_handlers.method (packages/ddp/livedata_server.js:646:1) I20150612-19:48:28.094(-7)? at packages/ddp/livedata_server.js:546:1 

呃…不知道为什么会这样。 如果我打开一个meteor壳我可以控制台日志require就好了。

如果您指的是来自节点核心的HTTPS ,那么您可以从meteor中要求:

 var https = Npm.require('https'); 

而无需安装任何额外的软件包。 节点核心中的任何模块都可以在服务器上以这种方式要求。