前端處理登入超時

2021-10-08 04:11:12 字數 1416 閱讀 1610

由於當時專案是多個公司合作,有些介面是跨域呼叫別人寫的,後端無法監聽。所以在後端做登入超時處理很麻煩,最後就由前端來寫。

這裡是通過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沒有類似事件的一些操作 ...