Внутренняя ошибка сервера при попытке загрузить контент в xdocument

    XDocument xDoc = new XDocument();
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(uri);
    req.Timeout = 1000 * 60 * 5;
    WebResponse res = req.GetResponse();
    Stream responseStream = res.GetResponseStream();
    xDoc = XDocument.Load(responseStream);
    responseStream.Close();

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

Теперь проблема в том, что в большинстве случаев код работает, но в тот момент, когда раньше я получал ошибку "тайм-аут", теперь я сталкиваюсь с "Внутренней ошибкой сервера (500)" при попытке использовать приведенный выше код. Любые подсказки относительно того, как решить эту проблему? Примеры кода будут очень полезны.

Спасибо!

1 ответ

Решение

Возможно, я ошибаюсь, но ошибка сервера Http 500 Interal генерируется сервером, на котором находится вызываемый вами URI. Ваш код может быть правильным, но сервер возвращает ошибку. Вам нужно отладить серверный скрипт (если вы им управляете) или альтернативно обработать ошибку http 500 в вашем коде.

Вы должны вызвать uri напрямую из браузера, чтобы узнать, вызывает ли это внутреннюю ошибку сервера http 500. Если это так (и вы контролируете веб-сервер), вы можете проверить журнал сервера для более подробной информации.

Надеюсь это поможет.

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