javascript - 在根上表达动态路由

标签 javascript express

我正在构建一个新的应用程序,我的老板要求我生成这种 url 结构来搜索不同的项目:

  • xyz.com/<techs>
  • xyz.com/<locaions>
  • xyz.com/<sectors>

如您所见,这会导致在同一根级别上有 3 个不同的动态 url:

app.get('/', homeController.index);
...
app.get(':locations', locationsController.getLocations);
app.get(':techs', techsController.getTechs);
app.get(':sectors', sectorsController.getSectors);
...

显然尝试这种方法我最终只产生错误,并且在我看来这是不可能实现的。我错了吗?我的老板非常确定这是可能的...如果是,怎么做?

最佳答案

app.get('/:route', (req, res) => {
  // to the name the name of the route parameter.
  let route = req.params.route;
  if (route === 'tech') {
    // do sth
  } else if (route === 'location') {
    // do sth
  } else {
    // do sth.
  }
})

关于javascript - 在根上表达动态路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46601341/

相关文章:

javascript - 如何不使用 Webpack 解析路径?

javascript - 根据属性值选择元素

javascript - 视差动画滚动效果

node.js - NodeJS : Dynamic form

javascript - '类型错误:Points is not a function' in Node. js

javascript - 如何在文本区域中动态添加新行; javascript 或 jquery

javascript - 为没有 API 的网站创建 YQL

node.js - 如何在 nodejs 中模拟请求和响应以测试中间件/ Controller ?

reactjs - Material UI 与 React 16 的兼容性为 0.2 倍

node.js - 如何在没有 `gcloud app deploy` 的情况下在 GCP 上部署 Node.js Express 服务器?