Как я могу изменить кодировку кодировки в ответе HTTP в Java

Мне нужно получить какой-то объект JSON с удаленного сервера, и для этого я использую эту функцию, которая прекрасно работает, за исключением того, что иногда извлекаются какие-то странные данные, которые, я полагаю, объясняются тем, что для декодирования используется кодировка ASCII.

Пожалуйста, найдите ниже метод thw, который я использую

public HttpResponse call(String serviceURL,String serviceHost,String namespace,String methodName,String payloadKey, String payloadValue) throws ClientProtocolException,IOException,JSONException
    {
            HttpResponse response = null;
            HttpContext HTTP_CONTEXT = new BasicHttpContext();
            HTTP_CONTEXT.setAttribute(CoreProtocolPNames.USER_AGENT, "Mozilla/5.0");
            HttpPost httppost = new HttpPost(serviceURL);
            httppost.setHeader("User-Agent",Constants.USER_AGENT_BROWSER_FIREFOX);
            httppost.setHeader("Accept", "application/json, text/javascript, */*");
            httppost.setHeader("Accept-Language","en-US,en;q=0.8");
            httppost.setHeader("Content-Encoding", "foo-1.0");
            httppost.setHeader("Content-Type", "application/json; charset=UTF-8");
            httppost.setHeader("X-Requested-With","XMLHttpRequest");
            httppost.setHeader("Host",serviceHost);
            httppost.setHeader("X-Foo-Target", String.format("%s.%s", namespace,methodName));
            /*Making Payload*/
            JSONObject objectForPayload = new JSONObject();
            objectForPayload.put(payloadKey, payloadValue);
            StringEntity stringentity = new StringEntity(objectForPayload.toString());
            httppost.setEntity(stringentity);
            response = client.execute(httppost);
            return response;


    }

Все эти заголовки, которые я передаю, верны, и я проверил то же самое с помощью элемента inspect в Google Chrome или плагине Firebug, если вы знакомы с Mozilla.

Теперь проблема в том, что большую часть времени я получаю читаемые данные, но иногда я получаю нечитаемые данные.

Я отладил с помощью eclipse и заметил, что кодировка в wrappedEntity отображается как "US-ASCII», Я прилагаю JPG для справки

Может кто-нибудь, пожалуйста, скажите мне, как я могу изменить кодировку с ASCII на UTF-8 ответа, прежде чем я сделаюresponse = client.execute(httppost); , PS: Как вы заметили, я передаю charset = utf-8 в заголовке, и что я уже проверил с помощью Firebug и Google Chrome, что я передаю точные заголовки.

Пожалуйста, увеличьте изображение, чтобы увидеть изображение более четко

заранее спасибо

Ответы на вопрос(4)

Ваш ответ на вопрос