Вы распечатываете карту, а не строку JSON, так как данные JSON уже проанализированы. Если вы просто хотите посмотреть на сетевой протокол для отладки, лучший способ сделать это - открыть Network Monitor
в симуляторе, где вы увидите все HTTP-запросы и сможете скопировать тело ответа JSON.
Однако вы все равно можете преобразовать Map
обратно в JSON, используя:
Log.p("results " + JSONParser.mapToJson(results));
Обратите внимание, что вы должны использовать Log.p()
и Log.e()
для записи строк / исключений, так как это будет работать лучше на устройствах .
mod_deflate и gzhandler php оба основаны на zlib, так в этом смысле существует мало различия к браузеру, как содержание сжимается.
в ответ на Ваше первое беспокойство можно установить модуль определенная .htaccess информация как это:
<IfModule mod_deflate.c>
# stuff
</IfModule>
в ответ на Ваше второе беспокойство можно обнаружить для поддержки браузера в PHP:
if (strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') ) {
ob_start('ob_gzhandler');
header("Content-Encoding: gzip");
// etc...
}
вот являются некоторые непротестированным .htaccess, который должен смочь обработать согласование сжатых по сравнению с несжатыми .js файлами: (источник)
<FilesMatch "\\.js.gz$">
ForceType text/javascript
Header set Content-Encoding: gzip
</FilesMatch>
<FilesMatch "\\.js$">
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.js$ $1\.js.gz [L]
ForceType text/javascript
</FilesMatch>
Если браузер правильно устанавливает, это Accept-Encoding
заголовок, необходимо смочь сказать, может ли браузер поддерживать gzip:
Accept-Encoding: gzip,deflate
Лучший способ достигнуть этого состоит в том, чтобы Ваш сервер поддерживал встроенный gzip. Вы взяли бы ".gz" от обоих, которые src тега script приписывают и хранят файл на несжатом сервере. Если бы клиент поддерживал его, то сервер автоматически отправил бы сценарий как gzip закодированный результат. Это действительно стоит Вашему серверу некоторого дополнительного ЦП, но файл сжат для тех клиентов, которые поддерживают его, в то время как клиенты старшего возраста все еще получают расширенную версию.
Проверьте mod_deflate для apache2. mod_gzip является эквивалентом для Apache 1.x.