hwh
2024-08-01 1d7d162b102320c08ca09eab8401ec2203b83e12
Pda/js/public.js
@@ -10,7 +10,6 @@
function sendData(url, data, type, callbackFun) {
   // callbackFun("{}");
   // return;
    var deferred = $.Deferred();
    if (type != "get") {
      data = JSON.stringify(data);
@@ -18,6 +17,22 @@
   if (url!=IP+"/WeatherForecast/Login") {
      if (!$.cookie('token')) {
         callbackFun("登录人信息已失效");
         try {
            parent.window.location.href = '/views/Login.html';
         }
         catch (error) {
            window.location.href = '/views/Login.html';
         }
         return;
      }
      if (isTokenExpired($.cookie('token'))) {
         try {
            parent.window.location.href = '/views/Login.html';
         }
         catch (error) {
            window.location.href = '/views/Login.html';
         }
         return;
      }
   } 
    $.ajax({
@@ -52,6 +67,22 @@
   if (url!=IP+"/WeatherForecast/Login") {
      if (!$.cookie('token')) {
         callbackFun("登录人信息已失效");
         try {
            parent.window.location.href = '/view/Login.html';
         }
         catch (error) {
            window.location.href = '/view/Login.html';
         }
         return;
      }
      if (isTokenExpired($.cookie('token'))) {
         try {
            parent.window.location.href = '/view/Login.html';
         }
         catch (error) {
            window.location.href = '/view/Login.html';
         }
         return;
      }
   } 
   $.ajax({
@@ -99,3 +130,21 @@
   
   return newobj
}
function isTokenExpired(token) {
   const tokenParts = token.split('.');
   if (tokenParts.length !== 3) {
     return true; // JWT 格式不正确
   }
   const payloadBase64 = tokenParts[1];
   const payload = JSON.parse(atob(payloadBase64));
   if (!payload || !payload.exp) {
     return true; // 没有有效载荷或者没有过期时间
   }
   const now = Date.now() / 1000; // 当前时间戳(秒)
   const expiration = payload.exp;
   return now >= expiration;
  }