瀏覽代碼

单点登录

seimin 3 年之前
父節點
當前提交
60efcc433a
共有 3 個文件被更改,包括 30 次插入4 次删除
  1. 21 4
      js/login.js
  2. 8 0
      libs/base64.min.js
  3. 1 0
      login.html

+ 21 - 4
js/login.js

@@ -1,9 +1,16 @@
1 1
 $(function () {
2
+  var isSSo = location.search.length > 0;//是否单点登录
3
+  if (isSSo) {
4
+    $('.container').hide();
5
+    login();
6
+  }
2 7
   var hasClick = false; //是否已经点击过登录按钮
3 8
   // 兼容ie的placeholder
4 9
   $('input, textarea').placeholder();
5
-  // 登录
6
-  $('#login').on('click', function login() {
10
+  // 登录点击
11
+  $('#login').on('click', login);
12
+  // 登录方法
13
+  function login() {
7 14
     if (hasClick) return;
8 15
     hasClick = true;
9 16
     var name = $('#name').val()
@@ -12,11 +19,21 @@ $(function () {
12 19
       username: name,
13 20
       password: pwd
14 21
     }
22
+    // 单点登录 start
23
+    var ssoStr = '';
24
+    var ssoJson;
25
+    if (isSSo) {
26
+      ssoStr = location.search.replace('?', '').split('&')[0].split('=')[1];
27
+      ssoStr = Base64.decode(decodeURIComponent(ssoStr));
28
+      ssoJson = JSON.parse(ssoStr);
29
+    }
30
+    var postData = isSSo ? { username: ssoJson.a, password: ssoJson.r, t: false } : data;
31
+    // 单点登录 end
15 32
     $.ajax({
16 33
       type: "POST",
17 34
       contentType: "application/json;charset=UTF-8",
18 35
       url: baseUrl + "auth/reqlogin",
19
-      data: JSON.stringify(data),
36
+      data: JSON.stringify(postData),
20 37
       success: function (res) {
21 38
         if (res.state == 200) {
22 39
           sessionStorage.setItem('loginUser', JSON.stringify(res.data.requester));
@@ -70,7 +87,7 @@ $(function () {
70 87
         console.log(e.responseText);
71 88
       }
72 89
     });
73
-  })
90
+  }
74 91
   // enter登录
75 92
   $(document).bind('keypress', function (e) {
76 93
     var keyCode;

文件差異過大導致無法顯示
+ 8 - 0
libs/base64.min.js


+ 1 - 0
login.html

@@ -11,6 +11,7 @@
11 11
     <link rel="stylesheet" href="./css/login.css">
12 12
     <script src="./libs/jquery-1.9.1.min.js"></script>
13 13
     <script src="./libs/jquery.placeholder.js"></script>
14
+    <script src="./libs/base64.min.js"></script>
14 15
     <!--[if lt IE 10]>
15 16
         <script src="./libs/html5shiv.js"></script>
16 17
     <![endif]-->