由於當時專案是多個公司合作,有些介面是跨域呼叫別人寫的,後端無法監聽。所以在後端做登入超時處理很麻煩,最後就由前端來寫。
這裡是通過cookie的過期時間去實現超時處理的。用的環境是vue,在axios***中實現
main.js
//isrefuse 判斷是否已經攔截了,否則可能出現同時呼叫多個介面出現幾個彈框
var isrefuse =
false
;// axios請求***
axios.interceptors.request.
use(
function
(config)
if(document.cookie)
elseif(
!isrefuse))}
});return promise.
reject
('登入過期');
// vue.prototype.$message.error('登入已過期請重新登陸');}}
,function
(error));
/*******************/
//如果後端處理
// 新增響應***
axios.interceptors.response.
use(
function
(response)
// 對響應資料做點什麼
return response;},
function
(error)
);
auth.js
export
default
//解密方法
decrypt()
// cookie訪問
setcookie
(form)
document.cookie = i+
'='+a+
";expires="
+expdate.
togmtstring()
+";path=/"
;// expires 用於設定 cookie 的過期時間。 expires 的值為 session,表示的就是會話性 cookie
//即document.cookie= name+"="+value+";path=/"; ,因為js的預設路徑是當前頁,如果不填,此cookie只在當前頁面生效!}}
,//重置cookie過期時間
resetcookie()
,//獲取cookie,將cookie字串轉化為物件
getcookie()
if(document.cookie.length>0)
form[name]
= value
})}return form },
}···
FLEX會話超時重新登入的處理例項
size large 實現機制 利用flexevent.idle空閒事件,然後用mx internal idlecounter來獲取空閒時間。具體 如下 需要import import mx.managers.systemmanager import mx.events.flexevent impo...
C 超時處理
在網上搜尋了很多c 超時處理的方法,下面一種是我除錯過的 超時處理 public class timeoutchecker public bool wait long timeout this.dispose return flag private void dispose 呼叫超時處理方法 檢查攝...
php curl 超時處理
php curl處理請求超時 背景 寫了乙個api管理的工具,增加了api請求的的工具,某些介面請求時間比較長,某些介面時間必須要短,希望超過超時時間的請求返回其它的狀態碼,要跟失敗或者curl失敗區分開,本質上雖然都是curl失敗但是從需求角度要區分開,但是php的curl沒有類似事件的一些操作 ...