簡體   English   中英

Express 4.x重定向

[英]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);
      }
});

瀏覽器收到響應: Web的控制台

但是沒有網頁重定向。 瀏覽器不會加載其他重定向頁面。 我在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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM