Я пытаюсь загрузить некоторые данные из экземпляра служб отчетов на нашем сервере TFS.
Учитывая, что код должен запускаться на компьютере, который не подключен к домену, я решил, что сам установил учетные данные. Не повезло, получил HTTP 401 Unauthorized назад. Хорошо, поэтому я подключил Fiddler, чтобы посмотреть, что происходит.System.Net.WebClient терпит неудачу
Но вот когда я получил Heisenberged - звонок теперь прошел без заминки. Таким образом, аутентификация проходит через подключенный Fiddler, но без него. Является ли Webclient сломанным или я что-то не хватает здесь?
private void ThisWorksWhenDomainJoined()
{
WebClient wc = new WebClient();
wc.Credentials = CredentialCache.DefaultNetworkCredentials;
wc.DownloadString("http://teamfoundationserver/reports/........"); //Works
}
private void ThisDoesntWork()
{
WebClient wc = new WebClient();
wc.Credentials = new NetworkCredential("username", "password", "domain");
wc.DownloadString("http://teamfoundationserver/reports/........"); //blows up wih HTTP 401
}
+1 для использования Принцип неопределённостей Гейзенберга как глагол, никогда не слышал, что один раньше! –