2016-08-19 67 views
0

我环顾四周,无法找到答案,所以我想我会问这里。 我有一个程序调用一个API,并在头文件中传递登录信息,服务器在身份验证时返回一些信息。问题是如果用户信用不正确,程序崩溃并抛出异常。这个错误是401.它如何捕捉这个并告诉用户? 我的代码是:错误处理HTTPWebRequests,VB.NET

Dim request = TryCast(System.Net.WebRequest.Create("https://myurl.com"), System.Net.HttpWebRequest) 

    request.Method = "GET" 

    request.Headers.Add("authorization", "Bearer " + AccessToken) 

    request.ContentLength = 0 
    Dim responseContent As String 
    Using response = TryCast(request.GetResponse(), System.Net.HttpWebResponse) 
     Using reader = New System.IO.StreamReader(response.GetResponseStream()) 
      responseContent = reader.ReadToEnd() 
      MessageBox.Show(responseContent) 
     End Using 
    End Using 

感谢。

回答

0

使用try catch语句

try 
    'My error prone code 
catch ex as Exception 
    'Handle my error 
end try 

Try 

     Dim request = TryCast(System.Net.WebRequest.Create("https://myurl.com"), System.Net.HttpWebRequest) 

     request.Method = "GET" 

     request.Headers.Add("authorization", "Bearer " + AccessToken) 

     request.ContentLength = 0 
     Dim responseContent As String 
     Using response = TryCast(request.GetResponse(), System.Net.HttpWebResponse) 
      Using reader = New System.IO.StreamReader(response.GetResponseStream()) 
       responseContent = reader.ReadToEnd() 
       MessageBox.Show(responseContent) 
      End Using 
     End Using 

    Catch ex As Exception 
     MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) 
    End Try