需要对NodeJ和Server进行一些澄清

时间:2017-07-19 17:11:57

标签: javascript node.js server

好的,这可能是一个非常愚蠢的问题,可能不适合堆栈溢出但是这对我有很大帮助。 所以我在教程中学习Nodej ...

现在,我了解了创建服务器并在他/她执行请求时向客户端发送回来的内容,例如在他/她的浏览器中输入URL。所以这就是我所做的:

var server = http.createServer(function(req,resp){
   resp.writeHead(200, {'Content-Type': 'text/html'});
   var page = fs.readFileSync('index.html', 'utf8');
   resp.end(text);
});

另外,还有其他一些实例,老师使用express.js来收集用户的请求,如下所示:

app.get('/', function(req, resp){
   res.render('index');
});
好的,所以这可能是糟糕的编码,但你明白了。现在,我的愚蠢问题是: 为什么我要创建此服务器并将此响应发送给客户端,因为如果我在浏览器http://127.0.0.1:8888/index.html上键入它,它将加载我的HTML页面并显示其内容?我有一个实时网站,我使用hostgator获取我的域名并托管我的网站,我不需要在Nodejs中设置服务器来发出访问该页面的请求。

如果有人能向我解释为什么我应该在nodejs中使用该代码

,我会很高兴

2 个答案:

答案 0 :(得分:2)

当您希望能够编写JavaScript以确定服务器响应给定请求的 时,您可以使用Node.js编写自己的服务器(例如,动态生成页面或通过WebSockets的)。这将替换您正在使用的现有HTTP服务器。

如果您只是提供静态文件,那么做任何复杂的事情都没有意义......但是学习如何提供静态文件是学习基础知识的一种方法。

答案 1 :(得分:0)

答案是:这取决于。

如果您只想渲染index.html文件,Node.js会被过度使用。

您将使用Node.js和路由创建一个restful API,一些从数据库返回数据的Web服务等等。