Javascript 使用Express为静态站点创建路由

Javascript 使用Express为静态站点创建路由,javascript,node.js,express,static,Javascript,Node.js,Express,Static,我正在使用nodeJS和express为服务器创建一个静态站点(HTML、CSS、JS) 我正在尝试创建路由,以便用户看到/about,而不是about.html。。。 对于主页(home.html),它可以正常工作。然而,当尝试通过app.get使用定义的路由访问页面时,我不断收到错误-任何指针 代码如下-我的样式和JS文件位于public目录中,HTML文件位于views目录中: const express = require('express'); const app = express(

我正在使用nodeJS和express为服务器创建一个静态站点(HTML、CSS、JS)

我正在尝试创建路由,以便用户看到
/about
,而不是about.html。。。 对于主页(home.html),它可以正常工作。然而,当尝试通过
app.get
使用定义的路由访问页面时,我不断收到错误-任何指针

代码如下-我的样式和JS文件位于public目录中,HTML文件位于views目录中:

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

app.use(express.static(path.join(__dirname + '/public')));
app.use(express.static(path.join(__dirname + '/views')));

app.get('/', (req, res) => {
  res.sendFile(__dirname + '/views/home.html');
});

app.get('/about', (req, res) => {
  res.sendFile(__dirname + '/views/about.html');
});

app.get('/contact', (req, res) => {
  res.sendFile(__dirname + '/views/contact.html');
});

// app.use(express.static('public'));
// app.use(express.static('views'));
// console.log(__dirname);
module.exports = app;

我得到的错误是:

Cannot GET /views/contact.html

如果您的折叠像下面的照片,您可以这样做:


如果您的折叠像下面的照片,您可以这样做:


你犯了什么错误?你必须提供详细信息更新帖子时出现错误@AHMEDSAJJADWhat errors?你必须提供详细信息更新帖子时出现错误@AHMEDSAJJADYour代码与我的代码相同,只是你使用了箭头函数…它产生了相同的结果?!您还有其他建议吗?这不一样,“/”路由应该是文件中的最后一个路由,直到遇到相同的问题,不幸的是
无法获取/views/contact.html
是的,我的文件夹结构正是如此,这就是为什么它更容易混淆的原因。这是我的node_modules public css img js views about.html contact.html home.html app.js server.js config.env package.json package-lock.json你能给我看看server.js吗?你的代码和我的一样,只是你用了箭头函数…它产生了相同的结果?!您还有其他建议吗?这不一样,“/”路由应该是文件中的最后一个路由,直到遇到相同的问题,不幸的是
无法获取/views/contact.html
是的,我的文件夹结构正是如此,这就是为什么它更容易混淆的原因。这是mine node_modules公共css img js视图about.html contact.html home.html app.js server.js config.env package.json package-lock.json您能给我看看server.js吗?
app.get('/about', (req, res) => {
  res.sendFile(__dirname + '/views/about.html');
});

app.get('/contact', (req, res) => {
  res.sendFile(__dirname + '/views/contact.html');
});
app.get('/', (req, res) => {
  res.sendFile(__dirname + '/views/home.html');
});