2016-11-09 5 views
0

특정 웹 사이트에서 사용자 이름을 사용할 수 있는지 확인하려고하지만 404 오류가 발생합니다. 이 Althought404 HttpWebRequest의 오류

Dim Request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("https://www.instagram.com/" + userToCheck & "/") 
     Dim response As System.Net.HttpWebResponse = Request.GetResponse() 

     Dim sReader As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream) 
     Dim steamResult As String = sReader.ReadToEnd() 

     If steamResult.Contains("Sorry") Then 
      addAvailable() 

작동 :

Dim Request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("http://steamcommunity.com/id/" + userToCheck) 
      Dim response As System.Net.HttpWebResponse = Request.GetResponse() 

      Dim sReader As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream) 
      Dim steamResult As String = sReader.ReadToEnd() 

      If steamResult.Contains("The specified profile could not be found.") Then 
       addAvailable() 
      End If 

어떤 아이디어 무슨 일이야?

+2

사용자가 존재하지 않는 경우에 (404)의 경우하고 싶은 것이 있습니까? –

+0

그래도 프로그램이 404를 제공하면 멈 춥니 다. 404를 제공하더라도 계속 실행되기를 원합니다. –

+0

"중지"를 정의하십시오. 예외가 발생합니까? 그렇다면'Try/Catch' 블록을 추가하십시오. –

답변

0

"중지"란 예외를 발생시키는 경우 실행을 계속하기 위해 try catch에 코드를 래핑해야합니다.

Try 
     Dim Request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("https://www.instagram.com/" + userToCheck & "/") 
     Dim response As System.Net.HttpWebResponse = Request.GetResponse() 

     Dim sReader As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream) 
     Dim steamResult As String = sReader.ReadToEnd() 

     If steamResult.Contains("Sorry") Then 
      addAvailable() 
    Catch ex As System.Net.WebException 
     Console.WriteLine(ex.Message) 
    End Try 

편집 : 당신이 무엇을 당신은 * * 404를 기대하지 않을 것이다, catch 블록 :

+0

문제는 사용자 이름을 사용할 수 없다는 것입니다./"죄송합니다"대신 "404" 제대로 작동하지 않는 것 같지만 "404"대신 "Sorry"를 입력하면 작동하지 않습니다. –

+0

@ DanielAndré 스트림 리더가 실제 페이지를로드하는 것이 아니라 404 리소스를로드합니다. 따라서 404를 읽으려고하는 이유와 작동합니다. 어떤 이유로 든 "죄송합니다"를 사용하려면 WebClient를 살펴보십시오. – Jaxi

+0

새 줄을 추가하기 위해 enter 키를 누르면 실수로 주석을 추가했습니다. https://msdn.microsoft.com/en-us/library/system.net.webclient(v=vs.110).aspx 이것을 확인하고 WebClient.DownloadString()을 확인하십시오. – Jaxi