Предотвратить ошибки при выполнении WebRequest в VB.NET
-
13-10-2019 - |
Вопрос
Я получаю три ошибки, используя следующую функцию:
Private Sub readWebpage(ByVal url As String)
Try
Dim req As System.Net.WebRequest = System.Net.WebRequest.Create(url)
Dim resp As System.Net.WebResponse = req.GetResponse
If Not resp.ContentType.Contains("text/html") And Not resp.ContentType.Contains("application/xhtml+xml") Then Exit Sub
Using Str As System.IO.Stream = resp.GetResponseStream
Using srRead As System.IO.StreamReader = New System.IO.StreamReader(Str)
parseHtml(srRead.ReadToEnd, url)
End Using
End Using
Catch ex As Exception
Debug.Print(ex.Message)
Debug.Print(url)
MsgBox(ex.Message, MsgBoxStyle.Critical, "Unable to download content from: " & url)
End Try
End Sub
Удаленный сервер вернул ошибку: (500) Ошибка внутреннего сервера.
Сервер совершил нарушение протокола. Раздел = responseStatusline
Удаленное имя не может быть решено: 'dmoz.orgsearch'
Как я смогу предотвратить эти ошибки?
Решение
Вы не можете предотвратить удаленные ошибки. Лучшее, что вы можете достичь, - это поймать исключения такими, какие вы уже есть.
Однако я бы предположил, что вы используете неверный URL -адрес - dmoz.orgsearch
не существует.
Это должно было быть: http://www.dmoz.org/search?q=myquery
?
Если URL -адрес, который вы используете, является узором, вы мало что можете с этим поделать.
Не связан с StackOverflow