WebException.Response. GetResponseStream () ограничен 65536 символами

Я пытаюсь получить HTML-код с веб-страницы с помощью HttpWebRequest и HttpWebResponse.

response = (HttpWebResponse)request.GetResponse();
...
Stream stream = response.GetResponseStream();

Объект ответа имеет значение ContentLength 106142. Когда я смотрю на объект потока, он имеет длину 65536. При чтении потока с помощью StreamReader с помощью ReadToEnd () возвращаются только первые 65536 символов.

Как я могу получить весь код?

Изменить:

Используя следующий сегмент кода:

catch (WebException ex)
{
    errorMessage = errorMessage + ex.Message;
    if (ex.Response != null) {
        if (ex.Response.ContentLength > 0) 
        {
            using (Stream stream = ex.Response.GetResponseStream())
            {
                using (StreamReader reader = new StreamReader(stream))
                {
                    string pageOutput = reader.ReadToEnd().Trim();

ex. Response.ContentLength = 106142

ex.Response.GetResponseStream (). Length = 65536

stream.Length = 65536

pageOutput.Length = 6575534 6575534] (из-за обрезки)

И да, код действительно усечен.

6
задан John Saunders 1 February 2011 в 19:38
поделиться