【问题标题】:router.get('/page') express Router not workingrouter.get('/page') express 路由器不工作
【发布时间】:2020-09-14 13:33:19
【问题描述】:

我正在尝试做一个简单的快速路由,并且我在前端使用 vanilla HTML。

index.js

const express    = require('express'),
      bodyParser = require('body-parser'),
      serverless = require('serverless-http'),
      app        = express(),
      nav        = require('./routes/nav'), // the router 
      PORT       = process.env.PORT || 8080;

/* Settings */

app.use(bodyParser.urlencoded({ extended: false }));
app.use(express.static('./public'));

/* APIS */
app.use('/.netlify/functions/api', nav); //Navigation API

module.exports = app;
module.exports.handler = serverless(app);

if(process.env.NODE_ENV === "development"){
  app.listen(PORT, () => {
    console.log(`Server is runing on PORT: ${PORT} ENV: ${process.env.NODE_ENV}`);
  });
}

nav.js

const express    = require('express');

const router     = express.Router();
const PATH       = "../../public/";

router.get('/', (req, res) => {
  res.render(`${PATH}index.html`)
});

router.get('/graph', (req, res) => {
  res.render(`${PATH}pages/graph.html`)
})


module.exports = router;

每次我尝试使用标签进行路由时,它都会告诉我“无法获取 /graph”

我的 HTML 导航

<ul class="navbar-nav mr-auto">
          <li class="nav-item"><a class="nav-link" href="/">Home</a></li>
          <li class="nav-item mr-auto"><a class="nav-link" href="/graph">Graph Algorithims</a></li>
          <li class="nav-item"><a class="nav-link" href="/sort">Sorting Algorithims</a></li>
</ul>
      

我认为问题可能出在本地服务器上,我尝试部署到 netlify 以查看它是否在那里工作并出现同样的问题。

【问题讨论】:

    标签: javascript node.js express routes netlify


    【解决方案1】:

    阅读您的代码,我似乎看不到您将 router.js 文件“连接”到 index.js 的位置。

    要解决此问题,请在 index.js 中添加以下内容:

    const router = require('path/to/router.js');
    app.use(router);
    

    【讨论】:

    • 您已将导航文件注册到 API 点 '/.netlify/functions/api',因此您必须转到 localhost:PORT/.netlify/functions/api/graph 才能查看您的 API。那样有用吗?我不知道 netlify 与此有什么关系,但如果我是你,我会简单地将 nav 连接到 '/',因为这里没有其他路线。
    猜你喜欢
    • 2017-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-18
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    • 2015-11-11
    相关资源
    最近更新 更多