2016-08-19 45 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