вторник, 2 июля 2013 г.

Долго выполняется .GetRequestStream()

Во время отладки случайно заметил, что для пустого метода POST создание запроса выполняется очень долго. Поход в гугл выдал это.

Как оказалось, HttpWebRequest по-умолчанию настроен на автоопределение настроек прокси-сервера, что есть очень медленно. Чтобы этого не происходило, при инициализации HttpWebRequest необходимо:
<HttpWebRequest>.Proxy = null;
Еще один любопытный момент проявляется при использовании опции:
 <HttpWebRequest>.AllowAutoRedirect = true;
При редиректе на страницу авторизации, которая устанавливает куку, эту куку из response мы получить не сможем, потому что ее там просто нет. Так что этот параметр в false и ручками.