Такое HttpResponse String? - PullRequest
       5

Такое HttpResponse String?

0 голосов
/ 03 декабря 2011

Я ответил на следующий вопрос:

не получен ответ = httpclient.execute (запрос);

См. Мой ответ там. Затем я получил комментариймой ответ от Peterdk

как:

Ответ не HtppResponse, а String.Или как вы получаете его HttpResponse?Зависит ли это от ResponseHandler?

Теперь у меня есть сомнение "Является ли HttpResponse строкой?"

Пожалуйста, помогите мне избавиться от этого сомнения и объясните, что не так в моей концепции.

1 Ответ

0 голосов
/ 03 декабря 2011

Этот комментарий к вашему ответу не имеет никакого смысла для меня.Я также понятия не имею, почему за вас проголосовали, хотя на самом деле я не думаю, что вопрос был сформулирован достаточно хорошо, чтобы на него можно было ответить правильно, но если вы действительно сомневаетесь в чем-то подобном, вы можете логически продумать его, проверивдокументы.

Краткий ответ:

HttpResponse не является строкой.

Длинный ответ:

Документация для HttpClient.execute(string) показывает это как сигнатуру метода:

public abstract HttpResponse execute (HttpUriRequest request)

Так ясно, execute возвращает вам HttpResponse.

Теперь, если вы перейдете к документам для HttpResponse, вы обнаружите, что HttpResponse является интерфейсом и включает такие методы, как метод, который вы использовали в своем ответе: getStatusLine().Сразу же вы знаете, что интерфейс не является строкой, поэтому HttpResponse не является String, но в случае, если вы думаете, что это другой путь и, возможно, String реализует HttpResponse, должно быть довольно очевидно, чтоString не имеет метода с именем getStatusLine(), и было бы нелепо для чего-то такого общего, как String, для реализации интерфейса, связанного с HTTP.Если вы действительно хотите быть уверенным, вы можете снова проверить docs и увидеть, что String не имеет getStatusLine() и не реализует интерфейс HttpResponse.

...