我是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');
但它不起作用。
答案 0 :(得分:0)
我没有使用Express尝试过。但是下面的代码在node中有效。
res.writeHead(302,{'Location':'url/test'});
res.end();
答案 1 :(得分:0)
只需res.redirect('/myroutes');
,就无需声明主机。