233、商城业务-认证服务-单点登录流程-1

 

 

 

@Controller
public class HelloController {

    @Value("${sso.server.url}")
    String ssoServerUrl;

    /**
     * 无需登录就可以访问
     * @return
     */
    @ResponseBody
    @GetMapping("/hello")
    public String hello(){
        return hello();
    }

    @GetMapping("/employee")
    public String employee(Model model, HttpSession session){

        Object loginUser = session.getAttribute("loginUser");
        if(loginUser == null){
            // 没登录,跳转到登录服务器进行登录
            // 跳转过去以后,使用url上的查询参数,标识我们自己是哪个页面
            // redirect_url=http://client1.com:8081/employee
            return "redirect:" + ssoServerUrl + "?redirect_url=http://client1.com:8081/employee";
        }else {
            List<String> emps = new ArrayList<>();
            emps.add("张三");
            emps.add("李四");
            model.addAttribute("emps", emps);
            return "list";
        }
    }

}

 

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>员工列表</title>
</head>
<body>
    <h1>欢迎:[]</h1>
    <ul>
        <li th:each="emp:${emps}">姓名:[[${emp}]]</li>
    </ul>
</body>
</html>

server.port=8081

sso.server.url=http://sso.com:8080/login.html

@Controller
public class LoginController {

    @GetMapping("/login.html")
    public String loginPage(){
        return "login";
    }

    @PostMapping("/doLogin")
    public String doLogin(){

        // 登录成功跳转,跳回到之前的页面
        return "";
    }
}

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登录页面</title>
</head>
<body>

    <form action="doLogin" method="post">
        用户名:<input type="text" name="username"/><br/>
        密码:<input type="password" name="password"/><br/>
        <input type="submit" value="登录"/>
    </form>
</body>
</html>

server.port=8080

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值