场景:
我有一个可供多个用户访问的服务器。前服务器:http://127.0.0.1:8081
它有一个按钮,单击它即可运行一个 Selenium 自动化测试。
我想获取当前由多个用户运行的测试的列表。
例如:如果 5 个用户访问该服务器并单击该按钮 2 次,则意味着运行的自动化测试为 10 个。
如何在 Node.js Express 中获得以上计数,例如正在运行的进程数?
我的server.js:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send(
'<form action="/server" method="POST">' +
' <input type="submit" name="server" value="Run Script" />' +
'</form>');
});
app.post('/server', function (req, res) {
var fork = require('child_process').fork;
var child = fork('./test');
res.send('Test Started....');
});
var server = app.listen(8081, function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
最佳答案
未经测试,但以下内容应该与您之后的操作类似。
不确定您是否想要访问计数器,因此执行了另一条路由 /counter
来回显当前计数器。
var express = require('express');
var app = express();
var counter = 0;
app.get('/', function (req, res) {
res.send(
'<form action="/server" method="POST">' +
' <input type="submit" name="server" value="Run Script" />' +
'</form>');
});
app.get('/counter', function (req, res) {
res.end("Counter = " + counter);
});
app.post('/server', function (req, res) {
var fork = require('child_process').fork;
var child = fork('./test');
counter ++;
child.on("close", function () { counter --; });
res.send('Test Started....');
});
var server = app.listen(8081, function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
关于javascript - 如何获取node.js中正在运行的进程数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46889921/