在vb.net中进行WebRequest时防止错误
-
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