无法获取/错误Node.js

时间:2018-08-21 08:42:14

标签: javascript node.js

大家好,请您告诉错误。 错误

无法获取/

所有文件都在同一目录中

var fs = require('fs');
var express = require('express');
var path = require('path');

var app = express();

app.use('/index', function(req, res){
    res.sendFile(path.resolve(__dirname, './index.html'));
});

app.use('/app.js', function(req, res){
    res.sendFile(path.resolve(__dirname, './app.js'));
});

app.use('/style.css', function(req, res){
    res.sendFile(path.resolve(__dirname, './style.css'));
});

app.listen(8080, function(err){
    if(err) console.log(err);
});

2 个答案:

答案 0 :(得分:1)

您有NetUseAdd告诉它如果客户请求app.use('/app'时该怎么办,而您有/app告诉它如果客户请求app.use('/app.js'时该怎么办,等等。

您没有/app.js!那么应该在哪里找到app.use('/'

(注意:要提供静态文件,您可能应该查看Express Static模块)。

答案 1 :(得分:0)

您可以在路径中使用通配符,以允许通过同一路径提供多个文件:

const express = require('express');
const app = express();

app.get('/*', function(req, res) {
    let filePath = req.params[0] || 'index.html';
    console.log('Getting ' + filePath);
    res.sendFile(filePath, {root: './'});
});

app.listen(8080, function(err){
    if(err) console.log(err);
});

例如,最好使用静态模块(如其他人所建议的那样)

const express = require('express');
const app = express();

app.use(express.static('./'));

app.listen(8080, function(err){
    if(err) console.log(err);
});