问题描述
exports.adduser = function(db) { return function(req, res) {// Get our form values. These rely on the 'name' attributesvar userName = req.body.username;var userEmail = req.body.useremail;var collection = db.get(’users’);var llll = collection.insert({ 'userid': userName, 'password': userEmail,})if (llll) { res.location(’http://baidu.com’);} else { res.send('error')} }};
数据库是插入成功的,但是不会正确跳转至到百度报错是 500 TypeError: res.location is not a function
这是什么原因?
问题解答
回答1:刚刚看了下,res.location是设置location请求头的
res.location(’/foo/bar’);res.location(’foo/bar’);res.location(’http://example.com’);res.location(’../login’);res.location(’back’);
可以使用与 res.redirect()里相同的urls。
举个例子,如果你的程序根地址是/blog, 下面的代码会把 location 请求头设置为/blog/admin:
res.location(’admin’);下面是重点
一般后端跳转都是用res.redirect([status], url),(状态可选,默认为302):
res.redirect(’/foo/bar’);res.redirect(’http://example.com’);res.redirect(301, ’http://example.com’);回答2:
看下你是怎么调用这个方法的,可能是res没有正确传入使用