【发布时间】:2011-02-16 06:06:52
【问题描述】:
我正在尝试将代理与 HTTPWebRequets 一起使用,在我尝试发布数据之前它工作得很好。由于某种原因,它一直超时。附件是我用于网络请求的类。有人可以请教。
Imports System.IO
导入 System.Net
公共类 EasyHttp 公共枚举 HTTPMethod 简称 HTTP_GET = 0 HTTP_POST = 1 结束枚举 公共代理作为字符串 公共端口为整数 公共 UseProxy 作为整数 = 0 公共子新() '没有 Args 构造函数 结束子
Public Function Send(ByVal URL As String, _
Optional ByVal PostData As String = "", _
Optional ByVal Method As String = "", _
Optional ByVal ContentType As String = "")
Dim request As HttpWebRequest
request = WebRequest.Create(URL)
request.ServicePoint.Expect100Continue = False
Dim Response As HttpWebResponse
Dim SW As StreamWriter
Dim SR As StreamReader
Dim ResponseData As String
If UseProxy = 1 Then
request.Proxy = New WebProxy(Proxy, Port)
End If
' Prepare Request Object
request.Method = Method
' Set form/post content-type if necessary
If (Method = "POST" AndAlso PostData <> "" AndAlso ContentType = "") Then
ContentType = "application/x-www-form-urlencoded"
End If
' Set Content-Type
If (ContentType <> "") Then
request.ContentType = ContentType
request.ContentLength = PostData.Length
End If
' Send Request, If Request
If (Method = "POST") Then
' Try
SW = New StreamWriter(request.GetRequestStream())
SW.Write(PostData)
' Catch Ex As Exception
'Throw Ex
' Finally
'SW.Close()
' End Try
End If
' Receive Response
' Try
Response = request.GetResponse()
SR = New StreamReader(Response.GetResponseStream())
ResponseData = SR.ReadToEnd()
' Catch Wex As System.Net.WebException
' SR = New StreamReader(Wex.Response.GetResponseStream())
' ResponseData = SR.ReadToEnd()
' Throw New Exception(ResponseData)
' Finally
' SR.Close()
' End Try
Return ResponseData
End Function
结束类
【问题讨论】:
标签: vb.net webrequest