2017-02-19 56 views
-1

이것은 Visual Studio 2015 또는? 나는 다음과 같은 한DownloadString이있는 일부 URL에서 Uncatchable NullException이 발생합니다.

Exception Exception thrown: 'System.ArgumentNullException' in 
     mscorlib.dll ("Value cannot be null.") System.ArgumentNullException 

코드/튜토리얼 ...

https://www.codeproject.com/Tips/397574/Use-Csharp-to-get-JSON-Data-from-the-Web-and-Map-i

가에서, HTTP를이 코드를 추가 양식 응용 프로그램을 만들 재현 "button1을"과를 Button1_Click 기능에라는 버튼을 추가하려면 URL이 방금 코드를 사용하는 경우 승, 그것을 https 전화를해야

var w = new WebClient(); 
string url = "https://www.msftncsi.com/ncsi.txt"; 
var content = w.DownloadString(url); 
MessageBox.Show(content); 
+0

어떤 점에서 이것이 실현 불가능합니까? 그것을 잡으려고 특별히 한 것은 무엇입니까? – hvd

+0

시도해 보았습니다. {...} catch (Exception e) {MessageBox.Show ("error"); 던져 전자; } 응답이 없습니다. – user576820

+0

그리고 프로그램에서 어떤 일이 발생합니까? 전체 프로그램이 충돌합니까? 계속 되니? 처리되지 않은 예외 대화 상자가 표시됩니까? 또한 어디에서나 예외의 스택 추적을 볼 수 있으므로 예외를 던지고있는 것을 구체적으로 볼 수 있습니다. – hvd

답변

0

... HTTPS 오류를 제공 오류를 제공하지 않습니다 아프다. 다음의 네임 스페이스를 가져보십시오 :

using System.Security.Cryptography.X509Certificates; 
using System.Net.Security; 

그런 다음 인증서 확인이 작업을 수행 :

다음
System.Net.ServicePointManager.ServerCertificateValidationCallback = 
    delegate (object sender, X509Certificate certificate, 
    X509Chain chain, SslPolicyErrors sslPolicyErrors) 
    { return true; }; 

이 작동합니다 :

var w = new WebClient(); 
string url = "https://www.msftncsi.com/ncsi.txt"; 
var content = w.DownloadString(url); 

이유는 위의 방법을 알고 있어야 또한 this을 읽어 보시기 바랍니다 위험 할 수 있습니다.

+0

불행히도 여전히 같은 오류가 발생합니다. – user576820

+0

어떤 오류가 발생합니까? 그리고 내가 준 코드 전체를 사용하고 있습니까? – CodingYoshi