Библиотека android-async-http получает заголовок ответа http от обработчика ответа

Я пытаюсь использовать библиотеку android-async-http http://loopj.com/android-async-http/

Он предлагает использовать этот код:

public void getPublicTimeline() throws JSONException {
    TwitterRestClient.get("statuses/public_timeline.json", null, new JsonHttpResponseHandler() {
        @Override
        public void onSuccess(JSONArray timeline) {
            // Pull out the first event on the public timeline
            JSONObject firstEvent = timeline.get(0);
            String tweetText = firstEvent.getString("text");

            // Do something with the response
            System.out.println(tweetText);
        }
    });
}
}

Но теперь моя проблема заключается в том, что мне нужно получить объект ответа, а также получить заголовок http.

Как я могу получить заголовок http?

1 ответ

Решение

@Zapnologica, похоже, что автор библиотеки предоставил изменения на основе этого запроса на извлечение: https://github.com/loopj/android-async-http/pull/170 Но он еще не выпущен, по крайней мере, последний доступный.jar версия библиотеки - 1.4.3, и, к сожалению, она не включает эти изменения. Единственный вариант, который мы можем попытаться использовать, - это клонирование / разветвление git repo и включение его источников в ваш проект.

ОБНОВЛЕНИЕ: Кажется, библиотека скоро будет добавлена ​​в центральный репозиторий Maven, но, по крайней мере, теперь я смог добавить сборку SNAPSHOT 1.4.4, используя gradle, для моего проекта с такими изменениями конфигурации:

repositories {
    ...
    //android-async-client repo
    maven {
        url "https://oss.sonatype.org/content/repositories/snapshots/"
    }
}

А затем в разделе зависимостей:

compile 'com.loopj.android:android-async-http:1.4.4-SNAPSHOT'

С тех пор у меня есть такие методы для AsyncHttpResponseHandler доступны для переопределения:

@Override
public void onSuccess(int statusCode, Header[] headers, String content) {
    super.onSuccess(statusCode, headers, content);
}

А также:

@Override
protected void sendResponseMessage(HttpResponse response) {
    super.sendResponseMessage(response);
}

UPD: вот ссылка на вопрос для добавления lib в maven: https://github.com/loopj/android-async-http/issues/168

Другие вопросы по тегам