簡體   English   中英

使用ajax和php時的用戶身份驗證和重定向

[英]User authentication and redirect when using ajax and php

我通常通過重定向用戶來限制用戶訪問,如果他們沒有有效的會話。

例如:

<?php
  session_start();
  if (!isset($_SESSION["userInfo"])) {
    header("Location: index.php");
  }
?>

但我正在使用ajax為我的所有頁面加載啟動一個新項目。

如果會話不再有效,我應該如何強制刷新我的webapp?

ShouldIi在我的所有ajax請求之前有一個奉獻認證請求,如果失敗刷新頁面通過javascript?

或者,我應該只在每個json響應中包含身份驗證數據,然后在進一步處理ajax請求之前進行身份驗證嗎?

有一個更好的方法嗎?

理想情況下,您可以很好地設計客戶端代碼,這樣您就可以從服務器端處理各種錯誤。

當您的客戶端代碼進行ajax調用時,它應該查看響應的狀態。 如果用戶沒有會話,則服務器應回復401(未授權)響應,這意味着“這是一個有效的URL,但您需要進行身份驗證”。

每當您的客戶端代碼獲得401時,它應該執行任何必要的操作以使用戶登錄。這可以將它們重定向到登錄屏幕,或者執行某種模式身份驗證DHTML-popup。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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