2012-07-22 4 views
2

HTTPS 연결 뒤에 숨겨진 파일을 다운로드해야합니다.HTTPS 파일 다운로드 C#

안전한 웹 사이트에 앉아있는 파일을 다운로드하는 것이 처음인데이 문제를 해결하기 위해 자격 증명을 사용해 보았지만 아무 소용이 없었습니다.

내가 읽은 것부터,이 작업을 완료하려면 인증서를 만들어 사용해야하지만 예제가 없습니다. 어떤 도움을 주셔서 감사합니다.

이것은 내가 지금 무엇을 가지고 :

 WebClient dove = new WebClient(); 
     CredentialCache mycache = new CredentialCache(); 
     dove.Credentials = new NetworkCredential("user", "pass"); ; 
     dove.DownloadProgressChanged += new DownloadProgressChangedEventHandler(dove_DownloadProgressChanged); 
     dove.DownloadFileCompleted += new AsyncCompletedEventHandler(dove_DownloadFileCompleted); 
     dove.DownloadFileAsync(new Uri("http://secure.website.com/File/Default.aspx"), "file.xls"); 

사람이를 완료하는 방법에 대한 예를 들어 저를 제공 할 수, 감사합니다.

답변

2

.NET 지원 된 HTTPS 투명 인증서와 u는 명시 적으로 제공 할 필요가 없습니다. 코드가 잘 보이며 웹 사이트에서 폼 인증이 필요하지 않는 한 제대로 작동해야합니다. 귀하의 코드에서 보면 인증은 기본 인증 일 수 있습니다. 그러나 웹 사이트에서 일반적으로 수행하는 양식 인증이 필요한 경우 먼저 인증 된 쿠키를 인증하고 서버에서 수신하는 코드를 작성해야합니다. 어떻게 수행하나요? 이 SO 질문에 더 잘 보아라. HttpClient and forms authentication in C#

+0

나는 그 기사를 사용한다고 생각한다. 내가 그것을 읽었으므로, 나는 그것을 완전히 이해하지 못한다. 무슨 일이 일어나는가? 1. 프로그램은 사이트에 로그인하고 쿠키를 검색한다. 2. 쿠키를 저장 한 후에는 파일을 다운로드하거나 웹 사이트에서 작업을 완료 할 때 쿠키를 인증 양식으로 사용합니다. –

2

시도 :

ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, policy) => { 
    //do what you want 
    return true; 
};