首页 > 解决方案 > 表达 res.sendFile 没有做任何事情

问题描述

我在使用 express 时遇到了一些问题,我想通过做来启动,localhost:3000/timer -> timetimer.html但它不起作用。

server.js

var express = require('express');
var path = require('path');
var indexRouter = require('./routes/index');
var app = express();

app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use(function(req,res,next){
    res.status(404).send('Richiesta Sconosciuta');
    next();
});

app.listen(function () {
  console.log('Server in ascolto sulla porta 3000!');
});

module.exports = app;

index.js

var express = require('express');
var path = require('path');
var router = express.Router();

router.get('/principale', function(req,res){
    res.sendFile('/principale.html', {root: path.join(__dirname,'../public')});
});

router.get('/timer', function(req,res,next){
    //res.sendFile('public/timetimer.html', {root: path.join(__dirname,'../public')});
    res.sendFile(__dirname + "/timetimer.html")
});


module.exports = router;

文件夹结构:

代码的启动工作,即它说server.js正在监听 3000,但是当我编写localhost:3000/timer浏览器时无法访问该站点

标签: javascripthtmlcssnode.jsexpress

解决方案


你没有在 app.listen 中指定端口

尝试:

app.listen(3000, function () {
  console.log('Server in ascolto sulla porta 3000!');
});

推荐阅读