保持页面的登录状态

一、页面是【先浏览,后要权限】

如:京东,淘宝等

第一步:静态页面中的会员信息链接

<div id="state_content"></div>

第二步:ajax 的一些操作

jQuery(document).ready(function ()
        {
            getUserData();
        });

function getUserData(){
var Option ={
                url: encodeURI('/Handler/AuthAccounts.ashx?action=getloginstate'),
                type: "post",
                dataType: 'text',
                cache: false, //设置为 false 将不会从浏览器缓存中加载请求信息。
                async: true, //(默认: true),所有请求均为异步请求。发送同步请求,请将此选项设置为 false。同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
                timeout: 150000, //设置请求超时时间(毫秒)。此设置将覆盖全局设置。
                error: function ()
                {
 
                },
                success: function (data, textStatus)
                {
                    if (data == null || data == undefined)
                    {
                        return false;
                    }
                    jsondata = eval('(' + data + ')');
 
                    if (jsondata.state == "success")
                    {
                        var weburl = '<a class="username">欢迎你,' + jsondata.message.split('|')[1] + '</a><a class="go_out" οnclick="ExitLoginState()">退出</a>';
 
                        $("#state_content").html(weburl); //内容
                    }
                    else
                    {
                        var textList = '<a href="/Login/index.shtml">【登录】</a><a href="/Register/index.shtml">【注册】</a>';
                        $("#state_content").html(textList); //内容
                    }
                },
                beforeSend: function ()
                {
                }
            };
    jQuery.ajax(Option);
    return false;
}
 
function ExitLoginState()
{
    var Option =
            {
                url: encodeURI('/Handler/AuthAccounts.ashx?action=exitloginstate'),
                type: "post",
                dataType: 'text',
                cache: false, //设置为 false 将不会从浏览器缓存中加载请求信息。
                async: true, //(默认: true),所有请求均为异步请求。发送同步请求,请将此选项设置为 false。同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
                timeout: 150000, //设置请求超时时间(毫秒)。此设置将覆盖全局设置。
                error: function ()
                {
                },
                success: function (data, textStatus)
                {
                    if (data == null || data == undefined)
                    {
                        return false;
                    }
                    jsondata = eval('(' + data + ')');
 
                    if (jsondata.state == "success")
                    {
                        alert("已经退出");
                        var textList = '<a href="/Login/index.shtml">【登录】</a><a href="/Register/index.shtml">【注册】</a>';
                        $("#state_content").html(textList); //内容
                    }
                },
                beforeSend: function ()
                {
                }
            };
    jQuery.ajax(Option);
    return false;
}

二、页面是【先要权限,再浏览操作】 

如会员中心等,直接设置登录页面上再操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring Boot中保持登录状态通常使用Session来实现。以下是一个基本的实现步骤: 1. 创建一个登录页面,用户输入用户名和密码,提交表单到后台。 2. 后台验证用户输入的用户名和密码是否正确,如果正确则在Session中存储一个标记来表示用户已登录。 3. 在其他需要验证登录状态页面或接口中,先判断Session中是否存在登录状态的标记,如果存在则表示用户已登录,否则需要重新登录。 以下是一个简单的示例代码: 1. 在LoginController中处理用户登录请求 ```java @Controller public class LoginController { @PostMapping("/login") public String login(@RequestParam String username, @RequestParam String password, HttpSession session) { // 验证用户名和密码是否正确 if ("admin".equals(username) && "123456".equals(password)) { // 存储登录状态到Session中 session.setAttribute("loginUser", username); return "redirect:/index"; } else { return "login"; } } } ``` 2. 在其他需要验证登录状态的Controller中,通过Session来判断用户是否已登录 ```java @Controller public class IndexController { @GetMapping("/index") public String index(HttpSession session) { // 判断Session中是否存在登录状态的标记 if (session.getAttribute("loginUser") != null) { return "index"; } else { return "redirect:/login"; } } } ``` 在上面的示例代码中,我们将用户登录状态存储在Session中的"loginUser"属性中。在其他需要验证登录状态页面或接口中,我们通过判断Session中是否存在"loginUser"属性来判断用户是否已登录。如果存在则表示用户已登录,否则需要重新登录
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值