Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我在使用NodeJS在服务器上执行简单JavaScript代码时遇到问题_Javascript_Node.js - Fatal编程技术网

我在使用NodeJS在服务器上执行简单JavaScript代码时遇到问题

我在使用NodeJS在服务器上执行简单JavaScript代码时遇到问题,javascript,node.js,Javascript,Node.js,我是Node.js的初学者 我刚刚安装了NodeJS,我正试图通过本地服务器创建和执行代码,以便于练习。但是在web浏览器上使用localhost:8080或通过windows 7上的cmd执行代码是不可能的 下面你可以看到我到目前为止一直在尝试什么 var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/html'});

我是Node.js的初学者

我刚刚安装了NodeJS,我正试图通过本地服务器创建和执行代码,以便于练习。但是在web浏览器上使用localhost:8080或通过windows 7上的cmd执行代码是不可能的

下面你可以看到我到目前为止一直在尝试什么

var http = require('http');

http.createServer(function (req, res) { 
   res.writeHead(200, {'Content-Type': 'text/html'});
   res.end('Hello World! i did it');
}).listen(8080);

浏览器只是说无法访问该站点,并且在执行命令后cmd没有显示任何内容。那么问题出在哪里。

获取端口环境变量并让服务器侦听该端口,而不是硬编码的端口,这将是一种很好的方法

在节点中,您可以使用:var-port=process.env.port | | 8080获得此信息

也就是说,如果设置了端口环境变量,则使用该变量;如果未设置,则使用8080

您的新代码将是:

var http = require('http');
var port = process.env.PORT || 8080;

http.createServer(function (req, res) { 
   res.writeHead(200, {'Content-Type': 'text/html'});
   res.end('Hello World! i did it');
}).listen(port);

如果您使用的是Windows CMD,请首先键入“node”。现在您将直接在node.js中编码。现在,复制并粘贴代码,然后按enter键。现在,在浏览器上尝试localhost:8080

如果仍然存在问题,请尝试使用其他端口执行相同操作。
我在我的机器上测试了你的代码,效果非常好。

检查此项:尝试使用其他端口号。此处的问题可能与你的代码无关,例如正在使用的端口。如果你想要额外的理智,你可以在你的服务器功能中放一个console.log,这样你的终端就可以确认它听到了请求!您使用什么命令加载服务器?只需仔细检查您使用的是“node myFileName.js”-除此之外,我可能看到的唯一问题是您已经在使用端口8080和另一个程序,将端口8080替换为8081并打开http://localhost:8081 在浏览器中