Javascript express应用程序中res.render上的重定向过多

Javascript express应用程序中res.render上的重定向过多,javascript,node.js,express,internationalization,Javascript,Node.js,Express,Internationalization,我尝试将frontpage的/路由重定向到来自i18n中间件的查询参数字符串,因为我正在翻译我的站点: app.use('/', function (req, res) { res.redirect('/' + req.getLocale()); }); app.use('/:lang', index); 所以我希望被从/重定向到/hu 我正在使用i18n节点中间件插件。文档中需要的部分如下所示: 但是,这会导致重定向过多,并且站点没有加载ERR\u-too\u-many\u重定向错误。这

我尝试将frontpage的
/
路由重定向到来自i18n中间件的查询参数字符串,因为我正在翻译我的站点:

app.use('/', function (req, res) {
  res.redirect('/' + req.getLocale());
});
app.use('/:lang', index);
所以我希望被从
/
重定向到
/hu

我正在使用i18n节点中间件插件。文档中需要的部分如下所示:

但是,这会导致重定向过多,并且站点没有加载
ERR\u-too\u-many\u重定向
错误。这是控制台输出:

GET / 302 18.685 ms - 50
GET /hu 302 4.789 ms - 50
GET /hu 302 3.312 ms - 50
GET /hu 302 4.679 ms - 50
GET /hu 302 2.234 ms - 50
GET /hu 302 4.708 ms - 50
GET /hu 302 3.040 ms - 50
...
这是什么原因造成的

编辑

这是我的索引路由器:

router.get('/', function (req, res, next) {
  fsAsync(function (err, data) {
    if (err) {
      return res.render('404', {
        titleShown: true,
        title: 'Error 404',
        description: 'Error 404',
        keywords: 'error,404'
      });
    }

    var gallery = data[0].gallery.portfolio.love;
    //var json = gallery;
    //console.log(json);

    var articles = data[1].articles.reverse();
    var slice = articles.slice(0, 6);
    var json = [{ articles: slice }];

    res.render('index', {
      //layout: 'main',
      titleShown: false,
      title: 'Hi!',
      description: 'Home page',
      keywords: 'wedding,photography,film,lantos,istvan',
      data: gallery,
      latestPosts: json
    });
  });
});
如果有人想深入了解,下面是我的app.js:

解决方案

只需更改路由顺序,因为我想要重定向的位置还不存在:

app.use('/:lang', index);
app.use('/', function (req, res) {
  res.redirect('/' + req.getLocale());
});
更新


有人可以向我解释,如果我比另一个提前4个月发布这个问题,我的问题是如何重复的?

你的
索引是什么样子的?问题已通过索引路由器更新。你已经尝试过切换这两个
应用程序的顺序。使用
行吗?没有,但现在我尝试了并解决了!非常感谢。我想首先我要重定向到路线,但看起来它在我想重定向的地方不存在。我的错(可能的副本)