如何解决Node.js Express项目中Localhost的'Cannot GET /'错误?
解决Express项目'Cannot GET /'错误
你的问题核心是根路径(/)没有对应的路由处理逻辑,当前server.js里只配置了/api/user、/api/restaurant等带前缀的API路由,当你访问http://localhost:PORT/时,Express找不到匹配的路由,就会返回这个错误。
以下是几种解决方式:
添加根路径路由
在所有app.use路由配置之后、app.listen之前,添加处理根路径的GET请求代码:app.get('/', (req, res) => { // 返回简单提示信息 res.send('服务器运行正常!可访问以下API端点:/api/user、/api/restaurant、/api/item、/api/cart、/api/order'); // 或者重定向到某个API路径,比如用户接口 // res.redirect('/api/user'); });访问正确的API路径
如果你是要测试API功能,直接访问对应的带前缀路径即可,比如:- 用户API:
http://localhost:PORT/api/user - 餐厅API:
http://localhost:PORT/api/restaurant
- 用户API:
托管静态文件(如果有前端页面)
如果项目包含前端静态资源(如HTML、CSS文件),可以用express.static托管静态文件夹,比如把静态文件放在public目录下:// 放在其他路由配置之前 app.use(express.static('public'));这样当访问根路径时,Express会自动加载
public目录下的index.html文件(如果存在)。
内容的提问来源于stack exchange,提问作者Muskaan Sharma
相关产品推荐
相关产品推荐

