Ich habe fast alles versucht, was ich mir vorstellen kann, um das zu erreichen, einschließlich einiger Dinge, die ich online gefunden habe. Alles, was ich versuche, ist das Herunterladen einer Datei (die einen direkten Link hat) von einer Website, auf der ich mich einloggen muss.WebClient DownloadFile mit Autorisierung funktioniert nicht
Ich habe versucht, die folgenden zu tun, mit dem „UploadValues“:
WebClient myWebClient = new WebClient();
NameValueCollection myNameValueCollection = new NameValueCollection();
myNameValueCollection.Add("username", this.UserName);
myNameValueCollection.Add("password", this.Password);
byte[] responseArray = myWebClient.UploadValues(felony, myNameValueCollection);
myWebClient.DownloadFile(felony, localfelony);
und ich habe auch versucht, als auch die Login-Informationen in dem Header setzen. Ich habe auch versucht, nur die Anmeldeinformationen einstellen, wie Sie aus dem kommentierten Code sehen:
WebClient client = new WebClient();
//client.UseDefaultCredentials = false;
//client.Credentials = new NetworkCredential(this.UserName, this.Password);
client.Headers.Add(HttpRequestHeader.Authorization, "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(this.UserName + ":" + this.Password)));
client.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36");
//client.Headers.Add(HttpRequestHeader.Cookie, this.webBrowser.Document.Cookie);
client.DownloadFile(felony, localfelony);
Egal, was ich versuche, das einzige, was ich es herunterladen bekommen, ist eine Datei, die die Login endet als Seite, als ob es nicht die Login-Informationen akzeptiert, die ich bestanden habe.
Ich habe die Header und so angesehen, und ich sehe nichts ungewöhnliches, das würde erklären, warum das nicht funktioniert. Irgendwelche Ideen? Vielen Dank.
Leider muss ich eine formelle Anfrage stellen, um Fiddler installieren zu lassen, was ich getan habe, aber das wird ein paar Tage dauern. Ich habe mir die Informationen angesehen, die Chrome auf der Registerkarte "Netzwerk" anzeigt, und sehe nichts, was erklären würde, warum das, was ich versucht habe, nicht funktioniert. –