2

在我的应用程序中,我先 CreateContext,然后再 RunInContext。我只需要添加对上下文中某些节点模块的访问。我知道如何添加自己的 Javascript 方法,但是当我添加像 async 和 http 这样的 Node 模块时会出错。我怎样才能做到这一点?

我正在使用沙盒模块https://github.com/gf3/sandbox来运行子进程

代码

var context = Script.createContext();
    context.myOwnFunctions = function() {
//my own javascript
}
context.myNodeFunctions = function() {
//require('async')
//require('http')
/Add some function that use the items I required above
}
var run = Script.runInContext('code to run', context);
4

1 回答 1

1

require返回模块,因此如果您不将其分配给某些东西,它将不可用。

var context = Script.createContext();
    context.myOwnFunctions = function() {
    //my own javascript
}
context.myNodeFunctions = function() {
    this.async = require('async');
    this.http = require('http');
    //Add some function that use the items I required above
}

var run = Script.runInContext('code to run', context);
于 2013-06-05T19:26:15.217 回答