使用来自远程服务器的节点js显示文本文件

时间:2018-08-17 20:23:14

标签: node.js linux http webserver remote-server

美好的一天!我很难解决这个问题。我目前正在使用节点js网络服务器(http)。

我是使用Node js的初学者,因此将不胜感激。

我希望实现的是显示一个字符串“ Hello World!”。在浏览器中通过URL访问它。问题是我正在从远程服务器运行脚本,但不幸的是我无法通过URL访问它。

脚本运行正常,但对于浏览器,它返回一条错误消息:

host didn’t send any data.
ERR_EMPTY_RESPONSE

这是我正在从远程服务器运行的脚本:

var http = require('http');
http.createServer(function (request, response) {
  response.writeHead(200, {'Content-Type': 'text/plain'});
  response.write('Hello World!');
  response.end();
}).listen(2000);

我认为我的脚本没有问题。所以我猜这是从服务器的设置开始的,但是我不知道它是在哪个部分导致不显示它。我目前正在使用Linux服务器。

谢谢!

1 个答案:

答案 0 :(得分:0)

据我所见,您正在侦听端口2000,您确定从中请求数据的url还包含端口,例如http://localhost:2000/?默认情况下,浏览器会尝试使用http上的80端口和https上的443端口进行连接,如果您正在侦听的端口与其他端口不同,则必须在URL中通过在域/ ip地址后使用“:”来定义它

无论如何,看看服务器端rest API的express模块​​,将使请求处理变得如此简单:

const express = require('express');
const app = express().listen(80);

app.get("/",function(request,response){
    response.send('Hello World');
});