您好,登錄后才能下訂單哦!
這篇文章主要介紹如何解決在Ajax中使用get和post所遇到的問題,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
使用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這個沒有聲明頭部信息,問題是存在的
簡單的說:Get請求和Post請求的區別
1.使用Get請求時,參數在URL中顯示,而使用Post方式,則不會顯示出來
2.使用Get請求發送數據量小,Post請求發送數據量大
以上是“如何解決在Ajax中使用get和post所遇到的問題”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。