IE瀏覽器下使用AJAX登錄接口請求緩存與登錄不了的問題解決

問題: 在IE瀏覽器下面,登錄的時候總是登錄不上,可是打開控制檯的時候再登錄卻能登錄上。ajax

分析: 經過抓包,發現,在不打開控制檯的時候,少了一個接口的請求,卻返回了改接口的返回信息,可是返回信息並非我想要的,因而就懷疑是IE瀏覽器在AJAX請求的時候,並非每次都有真正地請求到,而是在緩存中抓取上次的信息。瀏覽器

解決:緩存

一、在調用接口上加上不定參數,使每次都發出新的請求dom

 

URL + '?v='+Math.random()

 

二、從異步與非異步的方式來解決,由於 $.ajax 請求默認是異步的,這樣子可能會致使我還在登錄,還沒成功,可是頁面卻執行了其餘與登錄與否相關的操做。異步

這個時候就須要咱們把登錄設爲非異步的方式async

把 async 設置爲 false 則能夠使 $.ajax 請求變爲 非異步url

$.ajax({
    async: false,
    type: 'POST',
    data: {},
    url: ''
})

 

因而完美地解決啦。spa

相關文章
相關標籤/搜索