Vb.net 不使用代理时请求出错

Vb.net 不使用代理时请求出错,vb.net,proxy,request,httpwebrequest,Vb.net,Proxy,Request,Httpwebrequest,我的VB.Net应用程序有问题。当我尝试在没有代理的情况下向发送请求时,我在fiddler中得到以下响应:HTTP/1.1 502 fiddler-DNS查找失败 这是什么意思?为什么对请求使用代理服务器时没有错误 我使用以下代码发送请求: Public Function GetRequest(ByVal url As String, ByVal referer As String, ByVal cookie As CookieContainer, Optional proxy As Str

我的VB.Net应用程序有问题。当我尝试在没有代理的情况下向发送请求时,我在fiddler中得到以下响应:HTTP/1.1 502 fiddler-DNS查找失败

这是什么意思?为什么对请求使用代理服务器时没有错误

我使用以下代码发送请求:

  Public Function GetRequest(ByVal url As String, ByVal referer As String, ByVal cookie As CookieContainer, Optional proxy As String = "") As String

    Dim request As HttpWebRequest
    Dim response As HttpWebResponse

    Try
        Dim cookies As String = ""
        request = CType(HttpWebRequest.Create(url), HttpWebRequest)
        request.CookieContainer = cookie
        request.ServicePoint.Expect100Continue = False
        request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:8.0) Gecko/20100101 Firefox/8.0"
        If referer <> "" Then
            request.Referer = referer
        End If
        request.Timeout = 10000
        If proxy <> "" Then
            request.Proxy = New WebProxy(proxy)
        End If
        response = CType(request.GetResponse(), HttpWebResponse)

        cookies = response.GetResponseHeader("Set-Cookie")

        If url.Contains("ask.fm/") Then
            If New Regex("l=.*?; domain=ask.fm; path=/;").Match(cookies).Value = "" Then
                Return "ERROR"
            End If
        End If

        Dim source As String = New StreamReader(response.GetResponseStream()).ReadToEnd()
        If source.Contains("No robots allowed!") Then
            source = "ERROR"
        End If
        If source = "" Then
            source = "ERROR"
        End If
        Return source
    Catch ex As Exception
        Return "ERROR"
    End Try

End Function
公共函数GetRequest(ByVal url作为字符串,ByVal referer作为字符串,ByVal cookie作为CookieContainer,可选代理作为字符串=”“)作为字符串
Dim请求作为HttpWebRequest
作为HttpWebResponse的Dim响应
尝试
Dim cookies As String=“”
request=CType(HttpWebRequest.Create(url),HttpWebRequest)
request.CookieContainer=cookie
request.ServicePoint.Expect100Continue=False
request.UserAgent=“Mozilla/5.0(Windows NT 6.1;rv:8.0)Gecko/20100101 Firefox/8.0”
如果引用“”则
request.Referer=Referer
如果结束
请求超时=10000
如果是“代理”,则
request.Proxy=新的WebProxy(代理)
如果结束
response=CType(request.GetResponse(),HttpWebResponse)
cookies=response.GetResponseHeader(“设置Cookie”)
如果url.Contains(“ask.fm/”),则
如果新的正则表达式(“l=.*?;domain=ask.fm;path=/;”).Match(cookies).Value=”“则
返回“错误”
如果结束
如果结束
Dim source As String=New StreamReader(response.GetResponseStream()).ReadToEnd()
如果source.Contains(“不允许机器人!”),则
source=“错误”
如果结束
如果source=”“,则
source=“错误”
如果结束
返回源
特例
返回“错误”
结束尝试
端函数
您是否使用Fiddler检查交通?如果是这样,请确保Fiddler可以正确重定向您的流量


转到“帮助”>“关于Fiddler”并确保您的网关是正确的(设置为用于访问internet的代理,或者设置为“无网关”(如果您可以直接访问)。

Fiddler说:无网关,但我现在应该怎么做才能正确发送请求?