開發(fā)中發(fā)現(xiàn), 服務(wù)器偶爾會(huì)發(fā)送錯(cuò)誤格式 json 給 Android 客戶端, 導(dǎo)致 Android 客戶端 json解析失敗, 應(yīng)用異常.
并非服務(wù)器有意坑客戶端, 而是客戶端請(qǐng)求服務(wù)器數(shù)據(jù)時(shí), 除了得到正確 json 數(shù)據(jù)外, 數(shù)據(jù)可能還夾雜其它數(shù)據(jù).
例如:
thinkPHP 開啟 'SHOW_PAGE_TRACE '=> true
時(shí), 正確的 json 后面會(huì)夾雜HTML代碼,
解決辦法:
1. 將 'SHOW_PAGE_TRACE ' =>false
, 設(shè)置為false. 不過不太實(shí)際, 因?yàn)榉?wù)器可能會(huì)出現(xiàn)問題, 這時(shí)候需要開啟調(diào)試模式
2. 客戶端判斷 json 解析失敗, 使用 try catch 判斷json格式
(1) 客戶端判斷json格式
(2) 客戶端通過volley 的 post 方法將數(shù)據(jù)提交到服務(wù)器
(3) 服務(wù)器通過 I() 方法獲取客戶端提交的信息, 這里的 I() 方法是thinkPHP中的一個(gè)方法, 是獲取所有提交信息的方法, 無論客戶端通過任何方式提交, 都會(huì)獲取其鍵值對(duì)
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)武林網(wǎng)之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
新聞熱點(diǎn)
疑難解答
圖片精選