Asp WinHttp.WinHttpRequest.5.1 对象利用详解[网站编程]
本文“Asp WinHttp.WinHttpRequest.5.1 对象利用详解[网站编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
利用 WinHttpRequest 假造 HTTP 头信息,假造 Referer 等信息.
由于微软封闭了 XmlHttp 对象,所以无法假造部份 HTTP 头信息,但是 WinHttp.WinHttpRequest.5.1 对象,它竟然用可以成功假造全部 http 恳求的 header 信息!
从msdn得知,WinHttp.WinHttpRequest.5.1 是 msxml 4.0 的底层对象,也就是说 XMLHTTP/ServerXMLHTTP 也是在它的底子上封装而来,WinHttpRequest 的用法与 XmlHttp 大致相同.
WaitForResponse 在利用异步方法发送恳求时,可以用这个办法来掌握恳求的进程,指定的等候时间,以秒为一个异步传送办法来完成的值,SetTimeouts.
在服务端脚本中,不可以像客户端那样直接利用回调函数来掌握异步恳求,也没有呼应的函数来利用程序休眠一定的时间,因此,为了等候恳求返回,我们可以利用这个办法来等候一按时间.
- <%
- Dim WinHttp
- Set WinHttp = Server.CreateObject("WinHttp.WinHttpRequest.5.1")
- '设置参数
- WinHttp.SetTimeouts 60000, 60000, 60000, 3000 '设置操作超不时间
- 'WinHttp.SetTimeouts resolveTimeout, connectTimeout, sendTimeout, receiveTimeout
- 'resolveTimeout = 10000 '解析 DNS 名字的超不时间,10000 毫秒.
- 'connectTimeout = 10000 '成立 Winsock 衔接的超不时间,10000 毫秒.
- 'sendTimeout = 120000 '发送数据的超不时间,120000 毫秒.
- 'receiveTimeout = 60000 '接纳 response 的超不时间,60000 毫秒.
- WinHttp.Option(4) = 13056 '忽视错误标志
- WinHttp.Option(6) = False '为 True 时,当恳求页面重定向跳转时自动跳转,False 不自动跳转,截取服务端返回的302状况.
- WinHttp.Open "GET", "http://www.百度.com/", False 'GET 或 POST, Url, False 同步方法;True 异步方法
- '构成 HTTP 头信息
- WinHttp.SetRequestHeader "Accept", "*/*" '承受数据范例
- WinHttp.SetRequestHeader "Accept-Language", "zh-cn,zh" '用户系统语言
- WinHttp.SetRequestHeader "User-Agent", "Mozilla/6.0" '用户浏览器信息
- WinHttp.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded" '编码方法
- WinHttp.SetRequestHeader "Referer", "http://www.百度.com/" '来路
- WinHttp.SetRequestHeader "Connection", "Close" 'Close = 不保持衔接,Keep-Alive = 保持衔接(长期衔接)
- 'WinHttp.SetRequestHeader "Accept-Encoding", "gzip, deflate" '假如发送,会返回 gzip, deflate 紧缩过的编码
- 'WinHttp.SetRequestHeader "Content-Length", Len(Str) '内容长度,Post 方法用的.
- WinHttp.SetRequestHeader "Cookie", "test cookie!" '设置 Cookie
- '发送数据
- WinHttp.Send 'Post 方法:WinHttp.Send (参数)
- WinHttp.WaitForResponse '等候返回恳求,XMLHTTP中也可以利用
- '输出后果
- Response.Write WinHttp.Status '当前 HTTP 状况
- 'Response.Write WinHttp.ResponseText '文本数据
- Response.BinaryWrite WinHttp.ResponseBody '二进制数据流数据
- %>
Option()相关:
WinHttpRequestOption_UserAgentString = 0;
WinHttpRequestOption_URL = 1;
WinHttpRequestOption_URLCodePage = 2;
WinHttpRequestOption_EscapePercentInURL = 3;
WinHttpRequestOption_SslErrorIgnoreFlags = 4;
WinHttpRequestOption_SelectCertificate = 5; '13056 = 忽视错误标志
WinHttpRequestOption_EnableRedirects = 6; '为True时,当恳求的页面中有跳转时,抓取跳转页面信息.False相反不抓取
WinHttpRequestOption_UrlEscapeDisable = 7;
WinHttpRequestOption_UrlEscapeDisableQuery = 8;
WinHttpRequestOption_SecureProtocols = 9;
WinHttpRequestOption_EnableTracing = 10;
WinHttpRequestOption_RevertImpersonationOverSsl = 11;
WinHttpRequestOption_EnableHttpsToHttpRedirects = 12;
WinHttpRequestOption_EnablePassportAuthentication = 13;
WinHttpRequestOption_MaxAutomaticRedirects = 14;
WinHttpRequestOption_MaxResponseHeaderSize = 15;
WinHttpRequestOption_MaxResponseDrainSize = 16;
WinHttpRequestOption_EnableHttp1_1 = 17;
WinHttpRequestOption_EnableCertificateRevocationCheck = 18;
办法 Description 阐明
Abort 中止一个WinHTTP的 发送办法.
GetAllResponseHeaders 检索全部的HTTP呼应头.
GetResponseHeader 检索HTTP呼应头.
Open 翻开一个HTTP衔接到HTTP资源.
Send 发送一个HTTP恳求到HTTP服务器.
SetAutoLogonPolicy 设置当前自动登录战略.
SetClientCertificate 挑选一个客户端证书发送到一个安全的超文本传输协议(HTTPS)服务器.
SetCredentials 设置要利用的凭证与HTTP服务器,要末是原籍国或代理服务器.
SetProxy 设置代理服务器信息.
SetRequestHeader 增添,更改或删除一个HTTP恳求标头.
SetTimeouts 指定以毫秒为单位,个人的时间超越了一个组件发送/接纳操作.
WaitForResponse 指定的等候时间,以秒为一个异步传送办法来完成的值,SetTimeouts.
该 WinHttpRequest 对象定义以部属性.
属性 拜候范例 阐明
Option 读/写 设置或检索一个WinHTTP的选项值.
ResponseBody 只读 检索作为无标记字节数组的呼应实体机构.
ResponseStream 只读 检索机构作为呼应实体的IStream.
ResponseText 只读 作为文本检索呼应实体机构.
Status 只读 从上次检索呼应的HTTP状况代码.
StatusText 只读 获得HTTP状况的文本.
Events 活动
The WinHttpRequest object defines the following events.
WinHttpRequest 对象定义的下列事件.
Event 事件 Description阐明
OnError Occurs when there is a run-time error in the application.
当发生一个利用程序运行时错误时发生.
OnResponseDataAvailable Occurs when data is available from the response.
当呼应数据可用时发生.
OnResponseFinished Occurs when the response data is complete.
呼应数据完成时发生.
OnResponseStart Occurs when the response data starts to be received.
开始收到呼应数据时发生.
Remarks 备注
The WinHttpRequest object uses the IErrorInfo interface to provide error data.
该 WinHttpRequest 对象利用 IErrorInfo 接口来供应错误数据.
A description and numerical error value can be obtained with the Err object in Microsoft Visual Basic Scripting Edition (VBScript),
and the Error object in Microsoft JScript.
The lower 16 bits of an error number correspond to the values found in Error Messages.
Note For Windows XP and Windows 2000, see Run-Time Requirements.
注意:关于 Windows XP 和 Windows 2000,请参阅运行时间要求.
Requirements 要求
最低支持的客户端 Windows XP, Windows 2000 Professional with SP3 Windows XP
最低支持的服务器 Windows Server 2003, Windows 2000 Server with SP3
可再发行 WinHTTP 5.0 and Internet Explorer 5.01 or later on Windows XP and Windows 2000.
WinHTTP的5.0和Internet Explorer 5.01或更高版本的Windows XP和Windows 2000.
IDL HttpRequest.idl HttpRequest.idl
Library Winhttp.lib Winhttp.lib
DLL Winhttp.dll Winhttp.dll
← PHP Mysql 密码暴力破解,本机暴力破解 3306 端口,源码 [没有了] →
以上是“Asp WinHttp.WinHttpRequest.5.1 对象利用详解[网站编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |