我如何将这些脚本加入脚本,因为我所做的工作不起作用。我认为这是我搞砸的回调。

使用此代码,我可以将文本输出到我的浏览器。

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');




使用此代码,我可以读取文本文件并将其记录到控制台。

fs = require('fs')
fs.readFile('/etc/hosts', 'utf8', function (err,data) {
  if (err) {
    return console.log(err);
  }
  console.log(data);
});




但是这不会一起工作,为什么??????????
谢谢您的帮助。

   var http = require('http');
    http.createServer(function (req, res) {

       fs = require('fs')
       fs.readFile('/etc/hosts', 'utf8', function (err,data) {
         if (err) {
           return console.log(err);
         }
         console.log(data);
         res.writeHead(200, {'Content-Type': 'text/plain'});
         res.end('Hello World\n');
    });


    }).listen(1337, '127.0.0.1');
    console.log('Server running at http://127.0.0.1:1337/');

最佳答案

readFile完成后,您需要返回响应。您可以通过在readFile的完成回调中编写响应来完成此操作,例如

http.createServer(function (req, res) {

    fs.readFile('/etc/hosts', 'utf8', function (err,data) {
         if (err) {
           return console.log(err);
         }

         console.log(data);
         res.writeHead(200, {'Content-Type': 'text/plain'});
         res.end(data);
    });

}).listen(1337, '127.0.0.1');

关于node.js - 读取文件并输出到http,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22897503/

10-09 22:26