我试图创建一个简单的快速应用程序,但它在控制台中运行。当我在我的浏览器中打localhost:3000时,我收到网络错误。我似乎不知道问题是什么。我试图创建一个简单的快速应用程序,但它似乎不工作
这是我的代码。
var hostname = 'localhost';
var port = 3000;
var app = express();
app.use (function (req, res, next) {
console.log (req.headers);
res.writeHead (200, {'Content-Type': 'text/html'});
res.end ('<html><body><h1>Hello world</h1></body></html>');
});
// listing for request at port: 7000 no http.createServer needed
app.listen (console.log (
`Success server running at http://${hostname}: ${port}`
));
但是,当我在纯节点创建一个类似的应用程序,它工作正常。
这里是我的代码:
var fs = require('fs');
var path = require ('path');
var http = require ('http');
var hostname = 'localhost';
var port = 3000;
var server = http.createServer (function (req, res) {
console.log ('request for ' + req.url + ' using ' + req.method + ' method');
// checking if the request method is Get
if (req.method == 'GET') {
var fileUrl;
// checking for the request url if it is the home page or not and storing the correct request url in fileUrl variable
if (req.url == '/') fileUrl = '/index.html';
else fileUrl = req.url;
var filePath = path.resolve ('./public'+fileUrl);
var fileExt = path.extname (filePath);
if (fileExt == '.html' && req.url !== '/favicon.ico') {
fs.exists (filePath, function (exists) {
if (!exists) {
res.writeHead (404, {'content-type': 'text/html'});
res.end ('<h1> The file </h1>' + fileUrl + '<h1>is not found. Make sure your browser input is correct and try again!</h1>');
console.log('hello no favicon found');
return;
}
});
}
res.writeHead (200, {'content-type': 'text/html'});
fs.createReadStream (filePath).pipe(res);
} else {
res.writeHead (404, {'content-type': 'text/html'});
res.end ('<h1> The file' + fileUrl + 'not an html file');
console.log (fileUrl);
}
});
server.listen (port, hostname, function(){
console.log (`server started ${hostname}:${port}. Helloooooo`);
});
感谢您的评论和响应!
您将*错误*? - >显示他们!而你对'app.listen'的调用完全没有意义,你可以执行'app.listen(port,err => console.log(err))' –
我检查了你的代码。你错过了要求在第一部分的代码除了一切工作正常。 – kgangadhar