나는 온라인에서 찾은 여러 가지 사항을 포함하여이 작업을 수행하기 위해 내가 생각할 수있는 모든 것을 시도했습니다. 제가해야 할 일은 로그인해야하는 웹 사이트에서 파일 (직접 링크가 있음)을 다운로드하는 것입니다. WebClient DownloadFile (승인이 작동하지 않음)
는 내가 "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);
나는 또한뿐만 아니라 헤더의 로그인 정보를 넣어 시도했습니다. 나는 또한 당신이 주석 코드에서 볼 수 있듯이 단지, 자격 증명을 설정하려고했습니다 : 아무리 내가 무엇을하려고
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);
, 나는 그것을 다운로드 얻을 수있는 유일한 방법은 로그인되고 끝나는 파일입니다 페이지를 마치 내가 통과 한 로그인 정보를 수락하지 않은 것처럼
나는 머리글 등을 살펴 봤는데, 왜 이것이 작동하지 않는지를 설명하는 평범한 것을 보지 못했습니다. 어떤 아이디어? 감사.
불행히도 Fiddler를 설치하려면 공식 요청을해야합니다.하지만 그 작업은 며칠이 걸릴 것입니다. Chrome에서 '네트워크'탭에 표시되는 정보를보고 있었는데 왜 내가 시도한 것이 작동하지 않는지 설명 할 수있는 내용이 없습니다. –