2013-06-20 1 views
3

Мне нужно указать конкретный референт для определенных изображений на удаленном хосте для успешной загрузки. (Например, реферер должен быть «http://www.example.com», в противном случае веб-сервер будет возвращать HTTP 403)Как указать заголовки HTTP для async imageloading в AQuery (AndroidQuery)?

У AQuery есть раздел, посвященный их вики об указании заголовков HTTP для вызовов ajax, но я не могу представить себе, как для этого для простого вызова асинхронного изображения.

https://code.google.com/p/android-query/wiki/AsyncAPI#Http_Headers

Например, вот нормальный код AQuery, используемый для отображения изображения по сети:

new AQuery(submodelPhoto).image(MyApplication.MEDIA_BASE_URL + getItem(position), true, true, 0, R.drawable.default_image); 

Как бы указать HTTP Referer для этого вызова? Возможно ли настроить AQuery для этого для каждого вызова во время инициализации моего приложения? (Так что не нужно повторять каждый раз я пытаюсь загрузить изображение)

ответ

4

После некоторого копания (и больше чтения BitmapAjaxCallback) Я пришел к этому решению:

BitmapAjaxCallback cb = new BitmapAjaxCallback(); 
cb.header("Referer", "http://www.example.com"); 
cb.url(MyApplication.MEDIA_BASE_URL + getItem(position)).fallback(R.drawable. default_image).memCache(true).fileCache(true); 
new AQuery(submodelPhoto).image(cb); 

похоже на работу , просто хочу, чтобы я нашел подход, который задал бы реферер для AQuery для каждого запроса.