gpt4 book ai didi

Node.js 初学者 - 无法通过 Nodetuts 教程 2 - 标准输出和子进程

转载 作者:太空宇宙 更新时间:2023-11-03 22:48:18 26 4
gpt4 key购买 nike

我正在尝试阅读教程 nodetuts.com - tutorial 2不幸的是,我无法让示例正常工作,我对 Node.js 非常陌生,正在阅读我能找到的任何教程。据我了解,node.js 仍处于测试阶段,并且我认为实现此功能的代码现在已经过时了。 (这是代码):

var http = require('http');
var spawn = require('child_process').spawn;

http.createServer(function(request, response){

response.writeHead(200, {
'Content-Type' : 'text/plain'
});

var tail_child = spawn('tail', ['-f', 'test.txt']);

tail_child.stdout.on('data', function(data){
console.log(data.toString());
response.write(data);
});


}).listen(4000);

无论如何,决心继续下去,我一直在浏览 Node 网站上的文档,发现了这个:http://nodejs.org/api/all.html#all_child_pid这并不完全是我想要的(我想完成链接到顶部的教程),但我想对子进程工作做一些事情,并将该代码合并到此中:

var http = require('http');

var server = http.createServer(function(res, req){
res.writeHead(200);
res.end('testing');


var spawn = require('child_process').spawn,
grep = spawn('grep', ['ssh']);

console.log('Spawned child pid: ' + grep.pid);
grep.stdin.end();

}).listen(4000);

不幸的是,当我刷新页面http://localhost:4000/时,我什么也没得到,命令提示符吐出:(我知道它说 writeHead 是一个问题,但它在其他示例中工作正常-(如nodetuts - 教程1))

        res.writeHead(200);
^
TypeError: Object #<IncomingMessage> has no method 'writeHead'
at Server.<anonymous> (Z:\Joseph Goss Folder\Google Drive\Code\javascript_first\nodejs_first\stdoutTest.js:20:6)
at Server.EventEmitter.emit (events.js:91:17)
at HTTPParser.parser.onIncoming (http.js:1785:12)
at HTTPParser.parserOnHeadersComplete [as onHeadersComplete] (http.js:111:23)
at Socket.socket.ondata (http.js:1682:22)
at TCP.onread (net.js:404:27)

我想知道为什么我无法让这个工作,我显然错过了一些东西,但我不知道是什么,而且我什至无法通过第 2 号教程。:(

最佳答案

您在传递给 createServer 的函数中互换了 reqres

var http = require('http');

var server = http.createServer(function(req, res){
res.writeHead(200);
res.end('testing');


var spawn = require('child_process').spawn,
grep = spawn('grep', ['ssh']);

console.log('Spawned child pid: ' + grep.pid);
grep.stdin.end();

}).listen(4000);

关于Node.js 初学者 - 无法通过 Nodetuts 教程 2 - 标准输出和子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11283892/

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