在開發過程中,有時候會遇到需要定時請求服務器某些數據的需求,因爲今天在使用過程中遇到了一些問題,所以特意寫出來,當作填坑記錄。
在需要使用定時請求服務器時,如使用jquery 的ajax時一定注意謹慎使用async:false,因爲在開發過程中使用該參數時,會把瀏覽器鎖死,只有等待該請求有返回值時纔有效,所以在網絡不穩定的狀態下使用改方法會出現瀏覽器長時間鎖定,無法操作,並且可能會無響應的問題,chrome會彈出提示關閉還是等待。
所以在使用過程中一定注意使用async:false的場景。
還有一個問題是在定時請求ajax時可能應爲上一個請求還沒請求完就會執行下一個請求了,當請求是異步情況,可能會發生先後返回顛倒的問題,可能不是我們想要的結果,可以使用增加一個變量flag用於改方法請求的標識,如果上一個請求還沒完成(無論成功或失敗)則新進來的程序結束等待下一次請求。