我有一个带有调用javascript函数的超链接的html文件.javascript函数必须调用批处理文件...这一切都应该来自Node.js
<html>
<head>
<title>sample</title>
<script src="child.js"></script>
</head>
<body>
<a href="#" onclick="call()">click here</a>
</body>
</html>
child.js
function call()
{
var spawn = require('child_process').spawn,
ls = spawn('append.bat');
}
我收到这样的错误......
ReferenceError: require is not defined
var spawn = require('child_process').spawn,
任何答案..回复......
答案 0 :(得分:1)
Node.js是JavaScript的服务器端环境。要从网页与其进行互动,您需要建立http.Server
和use Ajax来进行通信。
部分示例(使用一些库来简化)将是:
// server-side
app.post('/append', function (req, res) {
exec('appand.bat', function (err, stdout, stderr) {
if (err || stderr.length) {
res.send(500, arguments);
} else {
res.send(stdout);
}
});
});
// client-side
function call() {
$.post('/append').done(function (ls) {
console.log(ls);
}).fail(function (xhr) {
console.error(xhr.responseText);
});
}
所展示的库对于服务器端是Express,对于客户端是jQuery。它还使用child_process.exec()
而不是spawn()
来获取Buffer
而不是Stream
。
资源:
node.js
Tag Info,其中包含许多“教程,指南和图书”和“免费Node.js图书和资源。”答案 1 :(得分:0)
您无法从浏览器访问Node.js.