標籤:

安卓下不解析json

安卓下不解析json

起因:微信小程序調試的時候在蘋果的手機上沒事,但是到了安卓的手機上就會出現問題。

原因:android 下調用request 的時候,自動加上了 bom頭,去掉就好了。

解決:如下代碼為PHP方式去除當前目錄及子目錄所有文件BOM信息的代碼,新建文件,將其放倒根目錄下,然後瀏覽器訪問即可。

<?phpif (isset($_GET[dir])) { //設置文件目錄 $basedir = $_GET[dir];} else { $basedir = .;}$auto = 1;checkdir($basedir);function checkdir($basedir){ if ($dh = opendir($basedir)) { while (($file = readdir($dh)) !== false) { if ($file != . && $file != ..) { if (!is_dir($basedir . "/" . $file)) { echo "filename: $basedir/$file " . checkBOM("$basedir/$file") . " <br>"; } else { $dirname = $basedir . "/" . $file; checkdir($dirname); } } } closedir($dh); }}function checkBOM($filename){ global $auto; $contents = file_get_contents($filename); $charset[1] = substr($contents, 0, 1); $charset[2] = substr($contents, 1, 1); $charset[3] = substr($contents, 2, 1); if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { if ($auto == 1) { $rest = substr($contents, 3); rewrite($filename, $rest); return ("<font color="red">BOM found, automatically removed.</font>"); } else { return ("<font color="red">BOM found.</font>"); } } else return ("BOM Not Found.");}function rewrite($filename, $data){ $filenum = fopen($filename, "w"); flock($filenum, LOCK_EX); fwrite($filenum, $data); fclose($filenum);}?>

推薦閱讀:

[譯]GraphQL:你需要知道的一切
Mapbox 現向所有新註冊用戶開放免費API!
淺談API網關如何承載API經濟生態鏈
API Method Recommendation from Feature Requests

TAG:API |