使用get遇到的問題:
1.問題一. 緩存:當每次訪問的url相同,客戶端直接讀取本地緩存裡面的內容,即使後台數據變化前台也不會有變化;
解決方法:在?後面鏈接一個num=【隨機數Math.random()】或者num=【時間戳new Date().getTime()】,'1.php?username="May"&'+num(這裡沒有變量名,避免和後台參數沖突)
2.問題二. 亂碼,當傳遞中文或者特殊字符的時候,前台顯示出現亂碼
解決辦法:使用編碼encodeURI('蝸牛')
測試結果:通過使用Chrome測試,結果get的兩種問題,都已經得到了解決
使用post遇到的問題:
post方式,數據放在send()裡面作為參數傳遞;
問題:當沒有設置請求頭的時候,後台直接不對數據進行處理;前台就無法獲得後台返回的數據
解決方法:手動設置請求頭(xhr.setRequestHeader('content-type','application/x-www-form-urlencoded')),聲明發送的數據類型
【注】post沒有緩存問題,沒有編碼問題(因為在請求頭裡面已經進行了聲明)
測試結果:通過使用Chrome測試,結果post這個沒有聲明頭部信息,問題是存在的
以上就是小編為大家帶來的有關Ajax中get和post的使用問題全部內容了,希望大家多多支持~