javascript - Node.js 中的动态路由

标签 javascript node.js express

我想创建动态 stub 作为 Web 服务。我的想法是在每个请求时加载一个定义文件并返回相应 URL 的数据。 定义文件可能如下所示:

/api/users {users:["john", "jack", "jake"]}
/api/users/1 {user:"john"}
/api/some-data/1 {data:"some data"}

在我代表教程创建的应用程序中,我发现:

router.post('/some-irl', function (req, res) {
    //some code
    return {some JSON}
});

但是这个定义对我来说看起来是静态的,它应该在我启动 Node.js 之前就存在。是否可以在请求发生时定义/some-irl ?

编辑

实际上,我打算做这样的事情:https://github.com/typicode/json-server但它已经在那里了!

最佳答案

您可以附加一个use中间件,它可以检查路径并决定是否处理它或传递它:

router.use(function(req, res, next) {
    // req.path
    // decide what to do
    // respond or next()
});

关于javascript - Node.js 中的动态路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34323309/

相关文章:

javascript - 分隔数组内的元素

Javascript 类选择

twitter - Twitter 克隆的最佳 MongoDB 架构?

javascript - 使用javascript打字时如何避免光标向后移动

Javascript 正则表达式 : Best Buy product ID from URL

javascript - 糟糕的 Node js API 性能,使用率非常低

node.js - 将 session 描述从 Node 服务器发送到客户端

javascript - 如何在 expressjs 中调用多个文件 .pug?

javascript - Passport req.isAuthenticated() 总是返回 false

javascript - 由于 CORS 错误 : “The value of the ' Access-Control-Allow-Origin' header must not be the wildcard '*' ”,Socket.io 和 Express 应用程序无法连接