問題我有一個按鈕,通過做一個AJAX POST請求,我想刷新頁面,當它完成。用Node.js的(快遞)res.redirect
所以,我的AJAX做一個POST到/upgrade
:
app.post("/upgrade", game.upgrade);
exports.upgrade = function(req,res){
player.findOne({name:req.session.name}, function(err, doc){
//doing something
doc.save(function(err){
if(err) console.log(err);
else res.redirect("/game/buildings");
});
});
}
正如你所看到的,redirect
去/game/buildings
app.get('/game/buildings', game.buildings);
export.buildings = function(req,res){
playerDB.findOne({name:req.session.name}, function(err, doc){
//doing something
res.render('./game/buildings', {username:req.session.name});
}
}
釷E題是res.redirect
在升級方法的工作,但在buldings
處理程序,則res.render
似乎被忽略。
我加了一個console.log("session: "+req.session.name)
的buildings
方法裏面,它的確定。所有數據似乎都沒問題,但res.render
不起作用。
在控制檯日誌,當我使用菜單(這種方式工作得很好)轉到/game/buildings
路徑,它打印是這樣的:
routing to buildings
session: Neoares
[90mGET /game/buildings [32m200 [90m48ms - 6.58kb[0m
[90mGET /javascripts/jquery.js [36m304 [90m0ms[0m
[90mGET /javascripts/game.js [36m304 [90m1ms[0m
[90mGET /stylesheets/bootstrap.min.css [36m304 [90m1ms[0m
[90mGET /stylesheets/justified-nav.css [36m304 [90m1ms[0m
[90mGET /images/buildings/wishing_well.svg [36m304 [90m1ms[0m
[90mGET /images/resources/wood.png [36m304 [90m1ms[0m
[90mGET /images/resources/stone.png [36m304 [90m2ms[0m
[90mGET /images/resources/iron.png [36m304 [90m1ms[0m
但是當我通過AJAX按鈕去,只打印此:
routing to buildings
session: Neoares
[90mGET /game/buildings [32m200 [90m98ms - 6.58kb[0m
是您快速的應用程序設置你的意見設置?如果是這樣,他們的目標是什麼? – mscdex
我想你的意思是:'app.set('views',path.join(__ dirname,'views'));'。是嗎? – Neoares