diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/common.js b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/common.js new file mode 100644 index 00000000..d0ff6617 --- /dev/null +++ b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/common.js @@ -0,0 +1,40 @@ +// 服务端地址 +var baseUrl = "http://sa-sso-server.com:9000"; + +// sa +var sa = {}; + +// 打开loading +sa.loading = function(msg) { + layer.closeAll(); // 开始前先把所有弹窗关了 + return layer.msg(msg, {icon: 16, shade: 0.3, time: 1000 * 20, skin: 'ajax-layer-load'}); +}; + +// 隐藏loading +sa.hideLoading = function() { + layer.closeAll(); +}; + +// 封装一下Ajax +sa.ajax = function(url, data, successFn) { + $.ajax({ + url: baseUrl + url, + type: "post", + data: data, + dataType: 'json', + headers: { + 'X-Requested-With': 'XMLHttpRequest', + 'satoken': localStorage.getItem('satoken') + }, + success: function(res){ + console.log('返回数据:', res); + successFn(res); + }, + error: function(xhr, type, errorThrown){ + if(xhr.status == 0){ + return alert('无法连接到服务器,请检查网络'); + } + return alert("异常:" + JSON.stringify(xhr)); + } + }); +} diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/home.html b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/home.html new file mode 100644 index 00000000..4e499ba6 --- /dev/null +++ b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/home.html @@ -0,0 +1,40 @@ + + + + + SSO-Server 平台首页 + + +

SSO-Server 平台首页 (前后端分离模式) (平台中心模式)

+

+ 进入Client1系统 +

+

+ 进入Client2系统 +

+

+ 进入Client3系统 +

+ + + + + + + + \ No newline at end of file diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/login.css b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.css similarity index 100% rename from sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/login.css rename to sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.css diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.html b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.html index ed3284bf..1f513b17 100644 --- a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.html +++ b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.html @@ -4,7 +4,7 @@ Sa-SSO-Server 认证中心-登录 - +
@@ -35,9 +35,10 @@
- + - + + diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/login.js b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.js similarity index 57% rename from sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/login.js rename to sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.js index fbe230be..0f0390ca 100644 --- a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/login.js +++ b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server-h5/sso-auth.js @@ -1,43 +1,3 @@ -// 服务端地址 -var baseUrl = "http://sa-sso-server.com:9000"; - -// sa -var sa = {}; - -// 打开loading -sa.loading = function(msg) { - layer.closeAll(); // 开始前先把所有弹窗关了 - return layer.msg(msg, {icon: 16, shade: 0.3, time: 1000 * 20, skin: 'ajax-layer-load'}); -}; - -// 隐藏loading -sa.hideLoading = function() { - layer.closeAll(); -}; - -// 封装一下Ajax -sa.ajax = function(url, data, successFn) { - $.ajax({ - url: baseUrl + url, - type: "post", - data: data, - dataType: 'json', - headers: { - 'X-Requested-With': 'XMLHttpRequest', - 'satoken': localStorage.getItem('satoken') - }, - success: function(res){ - console.log('返回数据:', res); - successFn(res); - }, - error: function(xhr, type, errorThrown){ - if(xhr.status == 0){ - return alert('无法连接到服务器,请检查网络'); - } - return alert("异常:" + JSON.stringify(xhr)); - } - }); -} // ----------------------------------- 相关事件 ----------------------------------- @@ -47,16 +7,29 @@ var pData = { redirect: getParam('redirect', ''), mode: getParam('mode', '') }; -sa.ajax("/sso/getRedirectUrl", pData, function(res) { - if(res.code == 200) { - // 已登录,并且redirect地址有效,开始跳转 - location.href = res.data; - } else if(res.code == 401) { - console.log('未登录'); - } else { - layer.alert(res.msg); - } -}) +// 提供 redirect 参数时,登录后往 redirect 跳转 +if(pData.redirect) { + sa.ajax("/sso/getRedirectUrl", pData, function(res) { + if(res.code == 200) { + // 已登录,并且redirect地址有效,开始跳转 + location.href = res.data; + } else if(res.code == 401) { + console.log('未登录'); + } else { + layer.alert(res.msg); + } + }) +} else { + // 未提供 redirect 参数时,登录后往 home 跳转 + sa.ajax("/sso/isLogin", {}, function(res) { + if(res.data) { + location.href = './home.html'; + } else { + console.log('未登录,请先登录...'); + } + }) +} + // 登录 $('.login-btn').click(function(){ diff --git a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server/src/main/java/com/pj/h5/H5Controller.java b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server/src/main/java/com/pj/h5/H5Controller.java index 716a3e32..ca1cde20 100644 --- a/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server/src/main/java/com/pj/h5/H5Controller.java +++ b/sa-token-demo/sa-token-demo-sso/sa-token-demo-sso-server/src/main/java/com/pj/h5/H5Controller.java @@ -16,7 +16,15 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController public class H5Controller { - + + /** + * 返回当前是否已经登录 + */ + @RequestMapping("/sso/isLogin") + public SaResult isLogin() { + return SaResult.data(StpUtil.isLogin()); + } + /** * 获取 redirectUrl */