0
我首次使用Node和Express创建了一个简单的网站,可以在数据库上执行CRUD操作。当我发出我的put请求时,我无法将页面重定向到'/ index',并且我运行了调试器来表达并且没有看到任何异常,页面根本不会改变。有什么想法吗?下面是server.js无法重定向到节点上的PUT请求中的另一个页面
app.set('view engine', 'ejs')
app.all('/', function(req,res){
var cursor = db.collection('jobs').find().toArray(function(err, results) {
res.render('index.ejs', {jobs: results})
})
})
app.get('/index',function (req, res) {
res.sendFile(__dirname + '/index.html');
})
app.get('/view',function (req, res) {
var cursor = db.collection('jobs').find().toArray(function(err, results) {
res.render('index.ejs', {jobs: results})
})
})
app.post('/jobs', function(req, res) {
db.collection('jobs').save(req.body,function(err, result){
if (err) return console.log(err)
console.log('saved to database');
res.redirect('/view');
})
})
app.put('/view', function(req, res) {
res.redirect(303, '/index');
})
你是如何制作PUT请求的?你如何测试“改变页面”? – Quentin
我认为问题是http状态303与PUT。尝试改为302或不使用。 –
@LucasCosta - 302将是一个坏主意,客户应该使用相同的请求方法。 OP可能不希望客户端向'/'发出PUT请求。 (虽然我不明白他们为什么希望客户端使用'/ view'而不是'/ view/a-specific-thing')。 – Quentin