HttpGet для с BBC новостей RSS канал - PullRequest
0 голосов
/ 27 марта 2012

Я хочу загрузить веб-страницу из RSS-канала BBC с помощью функции HttpGet в моем приложении для Android. Когда я получаю ссылку из RSS-канала, и я использую

HttpGet request = new HttpGet(link);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
try{
   String response_str = client.execute(request, responseHandler);
   textView.setText(response_str);
   }

Для RSS-канала из Нью-Йорка я могу получить контекст на их веб-странице, что означает, что эта функция, по крайней мере, работает в некоторых ситуациях. Тем не менее, в случаях BBC new, я получаю только веб-страницу, как

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"
"http:///www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">

<html xmlns= "http:///www.w3.org/1999/xhtml"
xmlns:og="http://opengraphprotocal.org/schema." xml:lang="en-GB">

Мне интересно, есть ли какая-то ситуация с перенаправлением, с которой мне нужно разобраться или что-то еще? В противном случае будет странно, если этот код работает для одной веб-страницы, но не работает для других.

Спасибо за чтение.

Ответы [ 2 ]

0 голосов
/ 27 марта 2012

Этот урок очень полезен для чтения RSS-каналов, пожалуйста, посмотрите здесь.http://www.ibm.com/developerworks/xml/tutorials/x-androidrss/

0 голосов
/ 27 марта 2012

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

final String feedURLStr = "http://feeds.bbci.co.uk/news/world/rss.xml?edition=uk#";
HttpClient client = new DefaultHttpClient();
HttpGet method = new HttpGet(feedURLStr);
ResponseHandler<String> handler = new BasicResponseHandler();
final String responseStr = client.execute(method, handler);
System.out.println(responseStr);

Убедитесь, что вы используете действительный URL фида (частичный список в настоящее время можно просмотреть здесь ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...