2013-07-26 2 views
-1

У меня есть файл gzipped, содержащий json-файл. Когда я обращаюсь к статическому файлу JSON с url, он отображает json в браузере, но когда я обращаюсь к gzipped-файлам, он загружает файл, но я хочу, чтобы браузер распаковывал и показывал его в браузере, как в первом случае. Помогите мне, пожалуйста, как я могу его организовать? Есть ли учебник? спасибо.отправить и распаковать gzip статический файл json с помощью tomcat 7

ответ

4

Если вы ожидаете, что ваш браузер распакуется и мгновенно отобразит файл с окончанием * .gz - это не сработает (если у вас нет специального плагина, который бы сделал это, подобно файлам PDF, отображаемым в браузере) ,

Следующий подход приведет к коту сжимающих указанных типов пантомимы на лету, вам не придется GZIP JSON файл самостоятельно (любой современный браузер будет распаковать файл сжатыми на лету):

Убедитесь, что ваш Connector в server.xml выглядит примерно так:

<Connector port="8090" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8444" 
compression="on" compressableMimeType="text/html, 
text/xml,text/plain,text/javascript,text/css,application/json" /> 

(добавить атрибуты compression и compressableMimeType)

Сконфигурируйте compressableMimeType в соответствии с вашими потребностями. Тип для JSON: application/json (согласно What is the correct JSON content type?).

+0

Привет, благодарю вас за помощь. Я не уверен, что правильно объяснил проблему. У меня есть data.gz и есть url для доступа к нему что-то вроде localhost: 8080/static_data/data.gz. Когда я иду по этому URL-адресу, загружается файл gz, но я хочу, чтобы он был извлечен, и содержимое (в данном случае json-файла), которое будет показано в браузере, возможно? –

+0

Если у вас есть файл с окончанием * .gz, это нормальное поведение, чтобы ваш браузер загрузил этот файл. «На лету несжатие» вашего браузера работает только для файлов, которые были сжаты «на лету». Ваш файл * .gz сжимается заранее. – reto

+0

, значит, нет способа показать json внутри data.gz? –

Смежные вопросы