Javascript 将HTML页面链接到NodeJS服务器-是否作为本地主机加载?

Javascript 将HTML页面链接到NodeJS服务器-是否作为本地主机加载?,javascript,node.js,Javascript,Node.js,我正在尝试创建一个没有HTML页面的nodejs服务器——我以前已经尝试过了。但是,对于这个任务,我需要将它直接发送到RedGreenBlue.html。我真的很挣扎,任何建议都将不胜感激 非常感谢 JS服务器 var http = require('http'), fs = require('fs'); fs.readFile('./RedGreenBlue.html', function (err, html) { if (err) { throw err; }

我正在尝试创建一个没有HTML页面的nodejs服务器——我以前已经尝试过了。但是,对于这个任务,我需要将它直接发送到RedGreenBlue.html。我真的很挣扎,任何建议都将不胜感激

非常感谢

JS服务器

var http = require('http'),
fs = require('fs');

fs.readFile('./RedGreenBlue.html', function (err, html) {
  if (err) {
    throw err; 
  }       
  http.createServer(function(request, response) {  
    response.writeHeader(200, {"Content-Type": "text/html"});  
    response.write(html);  
    response.end();  
  }).listen(8000);
});

您什么也看不到,因为应用程序中没有输出到
stdout
(例如,没有
console.log
)。因此,当您通过
节点ServerRedBlueGreen.js执行应用程序时,它将读取定义的文件并打开端口8000。您可以通过HTTP通过该端口与应用程序通信

因此,打开另一个shell并执行
curlhttp://localhost:8000
您应该会看到响应。您也可以在浏览器中打开URL


希望我能提供一些帮助:)

您能描述一下当前行为与预期行为的对比情况吗?不清楚您的代码是否/如何为您工作。抱歉-我在nodejs控制台中输入了'node ServerRedBlueGreen.js',但什么都没有发生,因为没有发生错误或任何事情。当我尝试加载localhost时,我只收到一条错误消息,说它拒绝响应。这对我有效(前提是
RedGreenBlue.html
实际存在)。你确定它存在吗?是的“RedGreenBlue.html”确实存在,它与JS服务器文件位于同一文件夹中。我不确定我是否理解这一点-为什么我需要“console.log?”@jacob above已设法让它为他工作。不,这只是关于你的问题的解释,为什么应用程序不输出任何内容。你的代码正在运行。我认为您在试图访问浏览器中的应用程序时错过了端口。正确的URL可能有点混乱,因为我没有提到“RedGreenBlue.html”将在浏览器中打开,而不是在控制台中打开。啊,太棒了,它正在工作。我以为我可以通过“localhost”访问它,但没有意识到它也需要端口扩展。非常感谢!好的,你能详细解释一下你的用例吗?你到底想要实现什么?当您通过
节点ServerRedBlueGreen.js启动应用程序时,它将启动一个HTTP服务器,该服务器将以
RedGreenBlue.html
的内容进行响应。您必须在HTTP客户端(如浏览器或
curl
等)的帮助下向服务器发送HTTP GET请求。编辑:完美。很高兴我能澄清:)