Javascript 使用新URL重新运行路由

Javascript 使用新URL重新运行路由,javascript,node.js,http,express,redirect,Javascript,Node.js,Http,Express,Redirect,我有一个小型的web服务器,作为旧URL的优化器,它匹配旧URL并重定向到新的更好的SEO优化URL 其中一个url类似于: login.php?return=http://example.com/index.php?page=protected_page 在优化了服务之后,它现在只是/page/protected\u page/,并且里面有身份验证,所以我自然会放一个匹配项,比如 'login.php': function(req, res, next) { if (req.query.

我有一个小型的web服务器,作为旧URL的优化器,它匹配旧URL并重定向到新的更好的SEO优化URL

其中一个url类似于:

login.php?return=http://example.com/index.php?page=protected_page
在优化了服务之后,它现在只是
/page/protected\u page/
,并且里面有身份验证,所以我自然会放一个匹配项,比如

'login.php': function(req, res, next) {
  if (req.query.return) {
    res.redirect(req.query.return);
  }
}
'index.php': function(req, res, next) {
  if (req.query.page === 'protected_page') {
    // redirect to proper seo page without index.php
    res.redirect(...);
  }
}
在这种情况下,首先浏览器将被重定向到
req.query.return
中的url,然后express将使用index.php上的匹配项响应新请求。这是可以的,但如果基础设施复杂,客户端浏览器发出新请求将需要一些时间(如果访问网站的人技术上远离服务器,则可能需要0.5-1秒)

我是否可以使用
req.query.return
并使用类似
app.processNewUrl(req.query.return)