внутренний RSS-канал не работает с объектом webClient - PullRequest
0 голосов
/ 26 февраля 2010

В рамках нашего приложения нам необходимо загрузить RSS-канал. У нашего клиента есть внутренний канал RSS, который отлично работает с IE / Firefox, но не работает с нашим приложением.

Приложение попробуйте скачать с URL. Я не уверен, что именно здесь не так:

RssChannelDom DownloadChannelDom(string url)
{
    RssChannelDom dom = null;

    System.Net.Cache.RequestCachePolicy policy =
        new System.Net.Cache.RequestCachePolicy(
            System.Net.Cache.RequestCacheLevel.BypassCache);

        WebClient client = new WebClient();
        client.CachePolicy = policy;
        client.Headers.Add("User-Agent", "Mozilla/4.0");
        byte[] feed = client.DownloadData(url);

        // parse it as XML
        XmlDocument doc = new XmlDocument();

        doc.Load(new MemoryStream(feed));

        return dom;
}

URL клиента выглядит так:

http://sampleclient/diapatents/index.php/Special:Ask/
    -5B-5BCategory:Patent_Alert
    -5D-5D-20-5B-5BResearch-20Unit::Allergy_and_Respiratory
    -5D-5D-20-5B-5BOrganisation::
    -5D-5D-20-5B-5BTarget::
    -5D-5D-20-5B-5BIndication::
    -5D-5D-20-5B-5BDate::
    -20-3E-20-0A-5D-5D-20-5B-5BRevised-20Since::
    -20-3E-20-0A2009-2D8-5D-5D/sort-3DDate/order-3DDESC/
    format-3Drss/rsstitle%3DPfizerpediaPatents/rssdescription-3DRSS-20Feed:
    -20Allergy-20and-20Respiratory-20recently-20uploaded-20or-20revised/
    limit%3D400

Ответы [ 2 ]

2 голосов
/ 26 февраля 2010

Вы всегда возвращаете null, поскольку ничего не делаете с возвращаемой переменной dom.

0 голосов
/ 26 февраля 2010

Вы на самом деле не указываете, в чем проблема. Вам нужно быть более точным в указании как сбой вашей программы.

При этом я бы проверил следующее:

  • Посмотрите, что такое код результата HTTP. Это должно быть 200. Если это не так, то это может означать, что вы отправили некорректный запрос.
  • Если HTTP-код результата равен 200, взгляните на фактическое содержимое возвращаемого потока. Это даже XML или что-то еще, что может указывать на ошибку?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...