Декодированный ответ в Java ME (Nokia Asha)

Я реализую небольшое приложение Java ME. Это приложение получает некоторые данные из 3-го ресурса patty и должно быть предварительно аутентифицировано. Я делаю первый вызов для получения файлов cookie (это было легко), а второй вызов с этими файлами cookie для получения данных. Я немного погуглил, как это сделать, и нашел следующее решение - Обработка cookie с помощью J2ME

Я изменил этот код на следующий для своей цели:

public void getData(String url,String cookie) {
    HttpConnection hpc = null;
    InputStream is = null;

    try {
        hpc = (HttpConnection) Connector.open(url);
        hpc.setRequestProperty("cookie", cookie);
        hpc.setRequestProperty("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
        hpc.setRequestProperty("Accept-Encoding", "gzip, deflate");
        hpc.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
        is = hpc.openInputStream();
        int length = (int) hpc.getLength(); 
        byte[] response = new byte[length];
        is.read(response);
        String strResponse = new String(response);
    } catch (Exception e) {
        System.out.println(e.getMessage() + " " + e.toString());
    } finally {
        try {
            if (is != null)
                is.close();
            if (hpc != null)
                hpc.close();
        } catch (Exception e) {}
    }
}

Я получаю что-то вроде следующего

??ÑÁNÃ0à;O±(²§M}A-?@
.?PYS¨Ôe¥Í@\üìde??XÊo}Vâ]hk?­6ëµóA|µvÞz'Íà?wAúêmw4í0?ÐÆ?ÚMW=?òêz    CÛUa:6Ö7¼T?<oF?nh6[_0?l4?äê&)?çó³?ÅÕúf¨ä(.? ªDÙ??§?ÊP+??(:?Á,Si¾ïA¥ã-jJÅÄ8ÊbBçL)gs.S.þG5ÌÀÆéX}CÁíÑ-þ?BDK`²?\¶?ó3I÷ô±e]°6¬c?q?Ó?¼?Y.¯??Y?%?ÏP1è?ìw;?È Ò??e
|ôh0?

Как я могу расшифровать это?


person RredCat    schedule 28.07.2013    source источник


Ответы (1)


Глупый я. Я не принял во внимание следующий код: hpc.setRequestProperty("Accept-Encoding", "gzip, deflate"); Я получаю закодированный в ZIP ответ и все, что мне нужно, расшифровывает его.

person RredCat    schedule 30.07.2013