Expressjs - 如何获得' /'每个请求的路由?

时间:2017-03-15 23:35:41

标签: javascript node.js express routes

使用ExpressJs构建应用程序,用户现在可以使用localhost:5000 / user / 12345请求用户配置文件。

然后,服务器处理它:

app.get('*', (req, res) => {
    res.sendFile(path.join(__dirname, 'index.html'));
});

问题是Express接受(错误)' / user'要发送的所有文件的路由:

GET /user/client/css/fonts/font-awesome.min.css 304 1076.704 ms - -

如何保持' /'路线?像这样:

GET /client/css/fonts/font-awesome.min.css 304 1076.704 ms - -

2 个答案:

答案 0 :(得分:1)

在定义路线之前使用它

app.use(express.static(path.join(__dirname, 'public'))); 

答案 1 :(得分:1)

要请求特定的用户个人资料,您必须沿特定路线发送用户的ID。如果您使用*所有资源请求都将由具有您编写的特定端点的nodejs响应。

使用:

代替现在使用的内容
app.get('/user/:id', function(req, res) {

    // access the id with req.params.id;
    res.sendFile(path.join(__dirname, 'index.html'));
});