2016-11-09 5 views
0

特定のWebisteでユーザー名が利用可能かどうかを確認しようとしていますが、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 

EDITは:どのようなあなたは* * 404を期待していない、catchブロック:)

+0

これは、ユーザー名が使用できないときに使用できるということです。/そして、 "Sorry"の代わりに "404"うまく動作しているようですが、 "404"の代わりに "Sorry"を入れても動作しません。 –

+0

@DanielAndréあなたのストリームリーダーは実際のページを読み込むのではなく、404のリソースを読み込んでいるので、なぜ404を読み込もうとしているのですか?何らかの理由で「申し訳ありません」を使用する場合は、Webクライアントを調べてください。 – Jaxi

+0

新しい行を追加するにはenterを押してください。偶発的なコメントがありました。 https://msdn.microsoft.com/en-us/library/system.net.webclient(v=vs.110).aspxこれをチェックし、WebClient.DownloadString()を見てください。 – Jaxi