从节点服务器执行脚本

我想执行一些特定的nodejavascript文件,在我的网站上有一个“点击”事件。我正在使用express来运行我的服务器和网站。我认为正确的做法是使用jQuery和一些GET请求。该Javascript文件的工作,如果我只需在控制台"node examplefile.js"打电话给他们的文件看起来像这样:从节点服务器执行脚本

var MapboxClient = require('mapbox'); 

var client = new MapboxClient('');

client.listStyles(function (err, styles) {

console.log(styles);

});

我想每次执行此文件中的一个上点击事件发生。

我是否必须将其作为模块导出到我的app.js?这是我想要做的,但我在实施中失败了。

任何建议或简单的例子如何实现这一点?

回答:

这是更好的创建一个新的模块,然后由快递应用

称之为创建新的模块(getStyles.js):

var MapboxClient = require('mapbox'); 

var client = new MapboxClient('');

module.exports = function (done) {

client.listStyles(function (err, styles) {

if (err) {

return done(err);

}

done(null, styles);

});

}

使用它明确内部应用程序:

... 

var getStyles = new MapboxClient('path/to/getStyles');

app.get('/your/route/here', function (req, res, next) {

getStyles(function (err, styles) {

if (err) return next(err);

res.render('view', styles)

});

});

...

但是如果你想从express执行命令行,那么使用exec函数,这里是一个例子:

... 

const exec = require('child_process').exec;

app.get('/on/click/buton/route', function (req, res, next) {

exec('/usr/bin/node file/path/.js', function (err, stdout, stderr) {

if (err) {

return next(err);

}

// send result to the view

res.render('veiw', { res: stdout});

});

});

...

回答:

1.Write功能在您examplefile.js

function a(){ 

var MapboxClient = require('mapbox');

var client = new MapboxClient('');

client.listStyles(function (err, styles) {

console.log(styles);

});

2.Include examplefile.js在app.js

<script src="examplefile.js" type="text/javascript"></script> 

3.Then调用()由的onclick(从app.js)事件文件

<input type="button" onclick="javascript: a();" value="button"/> 

这是我的理解,你正在尝试做的。

以上是 从节点服务器执行脚本 的全部内容, 来源链接: utcz.com/qa/267010.html

回到顶部