重定向Node.js中的发布请求

时间:2018-10-15 09:24:11

标签: node.js express url-redirection

我是node.js的初学者,正在尝试重定向发布请求。这是代码段

const mongoose = require('mongoose');
const passport = require('passport');
const router = require('express').Router();
const auth = require('../auth');
const Users = mongoose.model('Users');

router.post('/createuser', auth.required, (req, res, next) => {
    const { payload: { id } } = req;
    //var id = req.get("authorization");
  console.log("in create User route");

    return Users.findById(id)
      .then((user) => {
        if(!user) {
          return res.sendStatus(400);
        }

        //res.send(req.body);

        res.redirect(307,'http://localhost:8181/user');
      });
  });

我点击了Advance Rest Client的URL并获得了此声明

"Temporary Redirect. Redirecting to http://localhost:8181/user"

,但没有重定向。我也尝试过

res.redirect(302,'http://localhost:8181/user'); 

res.redirect('http://localhost:8181/user');

但它不起作用。

2 个答案:

答案 0 :(得分:0)

我没有使用Express尝试过。但是下面的代码在node中有效。

res.writeHead(302,{'Location':'url/test'});
res.end();

答案 1 :(得分:0)

只需res.redirect('/myroutes');,就无需声明主机。