|
@@ -1,47 +1,57 @@
|
|
|
-function checkLogin() {
|
|
|
- const loginId = getCookie('loginId');
|
|
|
- if (loginId) {
|
|
|
- // 如果 cookie 中有 loginId,说明用户已经登录,直接放行
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- // 如果没有 loginId,弹出登录框
|
|
|
- const username = prompt('请输入用户名');
|
|
|
- const password = prompt('请输入密码');
|
|
|
- // 发送登录请求
|
|
|
- const xhr = new XMLHttpRequest();
|
|
|
- xhr.open('POST', 'https://php.tianyunperfect.cn/controller/user.php?action=login', false);
|
|
|
- xhr.setRequestHeader('Content-Type', 'application/json');
|
|
|
- xhr.send(JSON.stringify({
|
|
|
- username,
|
|
|
- password
|
|
|
- }));
|
|
|
- const response = JSON.parse(xhr.responseText);
|
|
|
- if (response.code === 200) {
|
|
|
- // 登录成功,设置 loginId 的 cookie,并放行
|
|
|
- setCookie('loginId', response.data.token, 30);
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- // 登录失败,弹出错误提示
|
|
|
- alert(response.message);
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+let tokenKeyStr = "token";
|
|
|
|
|
|
function getCookie(name) {
|
|
|
- const cookies = document.cookie.split(';');
|
|
|
- for (let i = 0; i < cookies.length; i++) {
|
|
|
- const cookie = cookies[i].trim();
|
|
|
- if (cookie.startsWith(name + '=')) {
|
|
|
- return cookie.substring(name.length + 1);
|
|
|
- }
|
|
|
+ const cookies = document.cookie.split(";");
|
|
|
+ for (let i = 0; i < cookies.length; i++) {
|
|
|
+ const cookie = cookies[i].trim();
|
|
|
+ if (cookie.startsWith(name + "=")) {
|
|
|
+ return cookie.substring(name.length + 1);
|
|
|
}
|
|
|
- return null;
|
|
|
+ }
|
|
|
+ return null;
|
|
|
}
|
|
|
|
|
|
function setCookie(name, value, days) {
|
|
|
- const expires = new Date();
|
|
|
- expires.setTime(expires.getTime() + days * 24 * 60 * 60 * 1000);
|
|
|
- document.cookie = name + '=' + value + ';expires=' + expires.toUTCString();
|
|
|
+ const expires = new Date();
|
|
|
+ expires.setTime(expires.getTime() + days * 24 * 60 * 60 * 1000);
|
|
|
+ document.cookie = name + "=" + value + ";expires=" + expires.toUTCString();
|
|
|
+}
|
|
|
+
|
|
|
+function checkLogin() {
|
|
|
+ const loginId = getCookie(tokenKeyStr);
|
|
|
+ if (loginId) {
|
|
|
+ // 如果 cookie 中有 loginId,说明用户已经登录,直接放行
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ // 如果没有 loginId,弹出登录框
|
|
|
+ const username = prompt("请输入用户名");
|
|
|
+ const password = prompt("请输入密码");
|
|
|
+ // 发送登录请求
|
|
|
+ const xhr = new XMLHttpRequest();
|
|
|
+ xhr.open(
|
|
|
+ "POST",
|
|
|
+ "https://php.tianyunperfect.cn/controller/user.php?action=login",
|
|
|
+ false
|
|
|
+ );
|
|
|
+ xhr.setRequestHeader("Content-Type", "application/json");
|
|
|
+ xhr.send(
|
|
|
+ JSON.stringify({
|
|
|
+ username,
|
|
|
+ password,
|
|
|
+ })
|
|
|
+ );
|
|
|
+ const response = JSON.parse(xhr.responseText);
|
|
|
+ if (response.code === 200) {
|
|
|
+ setCookie(tokenKeyStr, response.data.token, 30);
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ // 登录失败,弹出错误提示
|
|
|
+ alert(response.message);
|
|
|
+ // 删除token
|
|
|
+ setCookie(tokenKeyStr, "", -1);
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
-checkLogin();
|
|
|
+
|
|
|
+checkLogin();
|