Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Распределённые приложения и сеть > C# HttpWebRequest авторизация


Автор: Santa12 5.5.2011, 11:13
Прощу помощи.
Формирую запрос, как надо:

Код

HttpWebRequest req = (HttpWebRequest)WebRequest.Create();
CredentialCache myCache = new CredentialCache();
myCache.Add(new Uri()); 
req.Credentials = myCache;


это так, коротко. Далее идет формирование Stream, отправка файла... Делаю апплоад на сервер (WebDav). Слишком долго. Беру сниффер, и что я вижу: файл грузится на сервер БЕЗ информации об аутентификации. Апплоад заканчивается, сервер ругается: 401, и ему в ответ летит этот же запрос уже с аутентификацией, и только тогда, загрузка проходит. Таким образом, я имею увеличение времени в два раза, и, ессно, теряю контроль для прогресс бара.
Пробовал ставить req.PreAuthenticate = true; не помогло. Может быть есть определенная очередность куда его ставить?
Есть идея (подсмотрено у Total Commandera): сперва отправить, положим, один байт, получить 401, и тут уже слать полный файл, с аутентификацией. Но самому это организовать не получается ((( После получения ответа от сервера, студия посылает нафиг все попытки что-либо отправить...
Может быть подскажете как?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)