【问题标题】:What is the proper way to redirect http requests based on the content in database?根据数据库中的内容重定向http请求的正确方法是什么?
【发布时间】:2021-01-16 11:36:32
【问题描述】:

在运行快速服务器时,重定向传入请求的正确方法是什么?

我有两条路线:POST 和 UPDATE。 POST 路由用于创建新项目到数据库,UPDATE 增加项目中的投票。

我想使用中间件(?)根据数据库内容重定向我的请求:

  • if 带有 req.param 的元素确实存在 => 重定向到 UPDATE 以处理投票

  • else 创建新元素 => 重定向到 POST 以处理创建

【问题讨论】:

    标签: javascript node.js express http


    【解决方案1】:

    我认为一个简单的方法可能是:

    const middleware = (req, res, next) => {
         req.param.name ? req.url = '/POST' : req.url = '/UPDATE' 
              next();
    }
      
    

    ,或者您可以将您的请求重定向到其他路由。

    const middleware = (req, res, next) => {
         req.param.name ? res.redirect('/POST') : res.redirect(/UPDATE')
              next();
    }
    

    此外,如果您有许多路线涉及做不同的事情,您可以制作动态路线。你可以检查这个:How to call an api from another api in expressjs?

    【讨论】:

      猜你喜欢
      • 2015-10-12
      • 1970-01-01
      • 2010-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-09
      相关资源
      最近更新 更多