【问题标题】:Redirect to another path in Node JS route重定向到 Node JS 路由中的另一个路径
【发布时间】:2021-12-07 14:12:17
【问题描述】:

当用户尝试打开时在 Node Js route.js 中

app.use('/demo1', require('express').static(__dirname + '/demo1'));

然后我想重定向到

app.use('/demo2', require('express').static(__dirname + '/demo2'));

喜欢 在浏览器用户类型 http://locahhost:5010/demo1这个网址

但它会打开 http://locahhost:5010/demo2这个网址

【问题讨论】:

    标签: javascript node.js


    【解决方案1】:

    在你的路由中使用重定向Express redirect

    例子:

    app.get('/demo1', function(req, res) {
     res.redirect('/demo2');
    });
    

    【讨论】:

      【解决方案2】:
      app.use((req, res, next) => {
       if (req.url == '/') {
        res.redirect('/en');
        return;
       }
        next();
      })
      

      我也是这样,在调用之前我必须使用 return next()

      【讨论】:

        【解决方案3】:

        您可能创建了一条路线。要修复,请从这里更改 about 路由器:

        app.get('/demo1', function(req, res) {
         res.redirect('/demo2');
        });
        

        如果你在单独的文件中有路由,你也可以试试这个。假设我们在路由文件夹的 demo1route.js 中有它。

        var express = require('express');
        var router = express.Router();    
        router.get('/', function(req, res) {
         res.render('/demo2');
        });
        

        然后在 app.js 中使用下面的代码

        var demo1 = app.require('../demo1route.js')    
        app.use('/demo1',demo1);
        

        【讨论】:

          【解决方案4】:
          app.get('/demo1', function(req, res) {
           res.redirect('/demo2');
          });
          

          如果 /demo2 是获取请求路由器,这应该可以正常工作

          【讨论】:

            猜你喜欢
            • 2017-04-27
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2013-08-22
            • 1970-01-01
            • 2017-12-18
            相关资源
            最近更新 更多