[英]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.