一般情况下,点击<a>链接或浏览器输入url时,请求到后端,服务器判断会话是否过期。过期,重定向到登录页,或返回登录页的页面。在ajax中,返回重定向无效,这个时候就需要自己在ajax的逻辑里判断。当状态码为302的时候,前端自己刷新页面,达到去登录页的目的。或者,弹出一个快速登录框登录。
后端在统一鉴权的controller里,判断是否ajax请求,是,返回302;或者约定一组返回结果,比如{'code':302,'msg':'请登录'},前端在解析。
header('Content-Type:application/json;charset=utf-8'); echo json_encode(['code'=>302,'msg'=>'会话过期']); die(0);