gpt4 book ai didi

node.js - 使用 Node.js 在服务器上执行脚本并在客户端上显示脚本输出的最佳方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 02:19:08 25 4
gpt4 key购买 nike

我正在开发一个小型网络应用程序,我希望能够让我的用户能够按下按钮并能够在服务器上远程执行脚本。我希望脚本的输出显示在客户端上。

我只是想了解实现此类功能的最佳方法。是否有任何库/结节可以让您直接执行类似的操作?

可能的方法

  1. Child.process()

最佳答案

查看 Node 的child_process 库。 Link

我之前使用过 .exec 函数,因为它运行脚本完成并捕获输出。这听起来像是您正在寻找的内容,只需将他们的示例命令替换为您的示例命令即可。

var exec = require('child_process').exec,
child;

child = exec('cat *.js bad_file | wc -l',
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
});

将此调用包装在回调中,您将收到对回调的响应,然后在脚本完成时收到客户端的响应。请注意您通过 HTTP 请求运行的脚本。像“运行任何命令”这样的开放字符串将是明显的安全问题,而长时间运行的脚本将是 HTTP 超时的问题。您可以实现基于 WebSockets 的解决方案并在结果出现时通过管道传送结果(如果您想启动进程并保持其运行,并可能稍后与其交互,请查看 .spawn。)

关于node.js - 使用 Node.js 在服务器上执行脚本并在客户端上显示脚本输出的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34283112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com