运行nodejs Web服务器,并显示其主页面

时间:2014-06-30 16:37:16

标签: node.js browser

我想编写一个运行Web服务器的nod​​e.js脚本,以及服务器的脚本 启动后,在默认浏览器中打开一个页面。 为了做后者,我尝试了npm包“open”,它完美地运行,除了 本地服务器发布的页面刚刚启动。 脚本类似于:

http.createServer(function(request,response){
   ... usual stuff
}).listen(8001);
open('http://www.localhost:8001/index.html');

我怀疑原因是当打开服务器时实际上并没有启动服务器 执行,但我试图把它放在一个计时器,几秒后解雇它,然后 结果是一样的。

2 个答案:

答案 0 :(得分:4)

在回调中调用open。

例如

http.createServer(function(request,response){
   ... usual stuff
}).listen(8001,function(){
   open('http://localhost:8001/index.html');
});

答案 1 :(得分:1)

这是因为NODE是异步的! open函数在从listen函数调用之前被调用! 所以在你收到回调后总是这么做!这不像程序编程! 所以使用:http.createServer(function(request,response){ ... usual stuff }).listen(8001,function(){ open('http://www.localhost:8001/index.html'); });