Javascript Express.js中的静态路由返回404错误
我正在尝试使用express.js为我的网站的不同页面创建路由。 当转到127.0.0.1:8080时,它会很好地加载index.html页面,但是,当我转到127.0.0.1:8080/questionaire时,它返回404错误,并且不会加载questionaire.html。我想用这句话:Javascript Express.js中的静态路由返回404错误,javascript,node.js,express,Javascript,Node.js,Express,我正在尝试使用express.js为我的网站的不同页面创建路由。 当转到127.0.0.1:8080时,它会很好地加载index.html页面,但是,当我转到127.0.0.1:8080/questionaire时,它返回404错误,并且不会加载questionaire.html。我想用这句话: app.use(express.static('client', { extensions: ['html'] })); 这意味着这是可能的,但是,它不起作用。如果有更好的方法解决问题,请通知我 目录
app.use(express.static('client', { extensions: ['html'] }));
这意味着这是可能的,但是,它不起作用。如果有更好的方法解决问题,请通知我
目录
client
-- index.html
-- index.js
-- questionaire.html
-- questionaire.js
svr.js
viewapi.js
svr.js
'use strict';
const express = require('express');
const app = express();
const view_api = require('./viewapi');
app.use(express.static('client', { extensions: ['html'] }));
const api = require('./api');
app.use('/view', view_api); // routing to api which will get data in form of JSON
app.listen(8080);
我刚刚试过你的设置,加载questionare.html对我来说很好。当您尝试加载页面时,是否从Express服务器收到任何其他错误?我之所以问这个问题,是因为我不确定
viewapi.js中的内容,所以当我测试它时,我没有该文件
然而,要回答这个问题:
如果有更好的方法解决问题,请通知我
分离您所服务的资产(html、css、js、图像等)是一种很好的做法。例如,您可以在客户机
文件夹中创建子文件夹,并将静态文件放在相应的文件夹中
您还可以在这里找到示例和更好的文档:我刚刚删除并阅读了app.use(express.static('client',{extensions:['html']}));但不知怎么的,它起了作用。我们将研究如何分离这些文件。