用params重定向到相同的路由

时间:2017-09-02 01:41:07

标签: node.js express

是否有可能以某种方式使用查询参数重定向到相同的路由?

用户点击网址: localhost:3000

我想将其修改为:localhost:3000/?something=somethingvalue

尝试res.redirect但当然我收到了太多请求错误,因为我正在创建无限循环。谷歌搜索解决方案,但没有运气,也许措辞是错误的,我正在努力实现。

这甚至可能吗?

由于

3 个答案:

答案 0 :(得分:1)

如果something为空,您可以添加一个简单的检查:

app.get('/', function(req, res) {

    // Checking if the "something" GET parameter is undefined or isn't at least 1 character long
    if(req.query.something === undefined || req.query.something.length < 1) {

        res.redirect('/?something=somethingvalue');
    }
});

答案 1 :(得分:0)

这种天真的解决方案是否运作良好?

app.get("/", (req, res) => {
  if (req.query.something != undefined) {
    // do something
  } else {
    return res.redirect("/?something=somethingvalue")
  }
})

答案 2 :(得分:0)

app.get('/', function(req, res) {

    // Checking if the "something" GET parameter is undefined or isn't at least 1 character long
    if(req.query.something === undefined || req.query.something.length < 1) {

        res.redirect('/?something=somethingvalue');
    }
});