我是Node Js的新手,对不起,如果这个问题无关紧要,但只是想知道,向浏览器发送HTML响应的正确方式是什么。在下面的简单示例代码中,我将服务器放在readFile方法中,好吧,我可能需要以这种方式为每个文件创建一个服务器。这绝对不是正确的做法。在Node Js中处理请求和响应的正确方式是什么?
const http = require('http');
const fs = require('fs');
if (fs.existsSync('../Html')) {
fs.readFile('../Html/index.html', (err, data) => {
if (err) throw err;
const server = http.createServer((req, res) => {
console.log('The request is made');
res.setHeader('Content-Type', 'text/html');
res.write(data.toString());
res.end();
console.log(req.url, req.method);
});
server.listen(3000, 'localhost', () => {
console.log('Listening for the localhost:3000');
})
});
}
稍微合适一点的方法是分析你的请求:
const server = http.createServer((req, res) => {
switch (req.path) {
case '/': // process index
case '/about': // process other routes and so on
// ...
}
})
然而,真正的应用程序不是这样构建的。几乎任何人都会使用应用程序框架来简化复杂的路由。
你可能想看看,比如在express.js中。