Для моего проекта мне нужно написать свой собственный облегченный веб-сервер.
В данный момент он делает то, что я хочу, но вроде ... медленно. по крайней мере, чтобы замедлить для меня.
Поэтому я думал о реализации сжатия GZIP, чтобы ускорить процесс.
Вот как.
public static String encodeToGZip(String data) {
ByteArrayOutputStream bout = null;
try {
bout = new ByteArrayOutputStream();
GZIPOutputStream output = new GZIPOutputStream(bout);
output.write(data.getBytes());
output.flush();
output.close();
bout.close();
} catch (IOException ex) {
ex.printStackTrace();
}
try {
return new String(bout.toByteArray(), "UTF-8");
} catch (UnsupportedEncodingException ex) {
return null;
}
}
проблема в том, что веб-сервер не может декодировать отправленные мной данные. Несмотря на то, что в нем указано, что он принимает кодировку gzip, я должен отправлять некоторые поврежденные данные.
это результат.
снифф проволочной акулы ==>
GET /login.html HTTP / 1.1
Хост: localhost: 9090
Соединение: keep-alive
Cache-Control: без кеширования
Прагма: без кэша
Пользователь-агент: Mozilla / 5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit / 535.11 (KHTML, как Gecko) Chrome / 17.0.963.79 Safari / 535.11
Принять: текст / html, приложение / xhtml + xml, приложение / xml; q = 0,9, / ; q = 0,8
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US, en; q = 0,8
Accept-Charset: ISO-8859-1, utf-8; q = 0,7, *; q = 0,3
HTTP / 1.1 200 OK
Подключение: закрыть
Сервер: My Lite Server v0
Кодировка содержимого: gzip
Тип содержимого: текст / html
............... T ... N ... 0 .... # ....... O ...? ... $ .. ......... BB ... г ... 6 ... [..... у ........... 6 .......... ............ G6E ............... S ...... с .. $ .......... ` я
Gw ............ AOAhU ... XO ... d ...] .... IU ... ч ... + ...... [.... .Y ......... б ... | х ......... rm1 ......... 1 ..... L ... Ui ... ...... S ... п ............ F ...... T2. [$ X ....... M ..... M. # * ........... d .... 58HL: .... Wx ...... Z ........... м ... т .. .Z). 'XQdg
...... Х ......... ~ ...... (...... <....... р / .......
........... "... 6 | 7 ........ 3
... r.Sv ... / ... гт .... ".......... SRJ .......... M.vR ^ ... 4 $. ..
.q ... х ................... / ... 8 ........... M ... у # ... J ...... 7 ........ d..le ....; .................. ~ ...... о .... F ......