[英]Express 4.x redirect
我需要一些幫助來了解此重定向的工作原理(以及為什么沒有按照我認為的去做):
問題:我有一個帶有“注銷”按鈕的HTML頁面,該按鈕觸發了jQuery代碼段:
$.ajax({
type: "POST",
url: "https://localhost:8000/chat",
data: {logout_msg: "get_out"},
success: (data, textStatus, jqXHR) => {
},
dataType:"json"
});
該按鈕起作用了,我在這里的NodeJS服務器中捕獲了“ POST”:
app.post('/chat', (req, res) => {
req.session.destroy((error) => {
if (!error) {
res.redirect("/login");
} else {
console.log(error);
}
});
但是沒有網頁重定向。 瀏覽器不會加載其他重定向頁面。 我在Firefox和Chrome中嘗試過此操作。 兩者的行為方式相同,因此我認為這是我的代碼中的某些內容。 我想念什么? 謝謝。
您僅“重定向” jquery的請求。 如果要在瀏覽器中打開其他頁面,請使用HTML表單發送注銷請求,或在成功處理程序中使用location.href ='...'。
您不需要JQuery進行簡單注銷。
只需添加HTML <form action="/logout" method="post">
在服務器端
app.post('/logout', (req, res) => {
req.session.destroy((error) => {
if (!error) {
res.redirect("/login");
} else {
console.log(error);
}
});
希望這可以幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.