asp中使用MSXML2.ServerXMLHTTP实现异步请求例子

asp使用MSXML2.ServerXMLHTTP异步发送请求时,需要注意判断MSXML2.ServerXMLHTTP对象的readyState是否为4,如果不判断直接获取对象的属性,如responseText会出现如下错误:

代码如下:

msxml3.dll 错误 '8000000a'

完成该操作所需的数据还不可使用。

/a.asp,行 18

asp使用MSXML2.ServerXMLHTTP异步发送请求源代码:

代码如下:

<%
if request.QueryString("dc")="1" then'xhr请求则输出当前时间并停止继续执行
  response.Write now
  response.End
end if
Dim xmlServerHttp
set xmlserverhttp = server.createobject("MSXML2.ServerXMLHTTP")
xmlServerHttp.open "GET", "http://root.jb51.net/a.asp?dc=1", true'发起异步请求
xmlServerHttp.send
 
While xmlServerHttp.readyState <> 4'注意这里要判断xhr对象的状态,如果不为4则等待1000ms,要不最下面那句会报上面贴出来的错误
    xmlServerHttp.waitForResponse 1000
Wend
 
response.contenttype = "text/html"
response.write "Receiver Page: " & xmlServerHttp.responseText & "<br/>"
%>

(0)

相关推荐

  • asp.net 模拟提交有文件上传的表单(通过http模拟上传文件)

    我们暂且不说如何去模拟数据,通过一个简单的form看看当请求发生时,客户端提交了什么样的数据给服务端. 下面是一个简单的html form,两个文本输入框,一个文件上传(这里我选择一张图片),注意有文件上传的form的enctype属性. 复制代码 代码如下: <form action="sql.aspx" method="post" enctype="multipart/form-data"> <input id="

  • 用asp+xmlhttp编写web采集程序

    web采集程序?网页抓取程序?小倫程序?不管怎么叫,这种程序应用倒是蛮广的.本文不讨论这种使用这种程序引起的版权或道德问题,只谈这种程序在ASP+VBScript环境下的实现 :-) 预备知识:除了一般的ASP+VBScript的知识外,你还需要了解xmlhttp对象和正则表达式对象.xmlhttp对象是时下风头正劲的Ajax的主角:而学好了正则表达式,你再也不用为处理复杂的字符串犯愁. 在编写和调试正则表达式时,RegEx 这个小工具非常有用. 目录 抓取一个远程网页并保存到本地  改进:处理

  • Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据

    复制代码 代码如下: /**//// <summary> /// 生成带CDATA的节点 /// </summary> /// <param name="xDocument">XmlDocument</param> /// <param name="elementName">元素名称</param> /// <param name="cdataValue">CDA

  • Asp 使用 Microsoft.XMLHTTP 抓取网页内容并过滤需要的

    Asp 使用 Microsoft.XMLHTTP 抓取网页内容(没用乱码),并过滤需要的内容 示例源码: 复制代码 代码如下: <% Dim xmlUrl,http,strHTML,strBody xmlUrl = Request.QueryString("u") REM 异步读取XML源 Set http = server.CreateObject("Microsoft.XMLHTTP") http.Open "POST",xmlUrl,

  • asp页面提示Response 对象 错误 ASP 0156 : 80004005 HTTP 头错误

    其实这类问题就是因为缓存问题,大家可以参考下面的方法解决: 有些ASP页面第一次打开的时候会出现Response 对象 错误 'ASP 0156 : 80004005' HTTP 头错误,但刷新后又正常了,解决方法如下 复制代码 代码如下: Response.Buffer = True '应该是这行,去掉就ok '如果还不行就把 Response.Buffer = True Response.ExpiresAbsolute = Now() - 1 Response.Expires = 0 Res

  • asp.net HttpWebRequest自动识别网页编码

    复制代码 代码如下: static string GetEncoding(string url) { HttpWebRequest request = null; HttpWebResponse response = null; StreamReader reader = null; try { request = (HttpWebRequest)WebRequest.Create(url); request.Timeout = 20000; request.AllowAutoRedirect

  • 运行asp.net时出现 http错误404-文件或目录未找到

    问题原因: 我遇到的情况,装了.NET 2.0 + IIS 升级后就出现以上问题:不确定其他原因也会不会产生类似错误.(如果有,希望大家能贴出更多的原因,方便遇到同样错误的人找到问题的根源) 解决方法: 首先,要重新注册IIS :运行cmd 后 进入"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727" 键入命令aspnet_regiis -i 其次,在: 计算机管理--Internet信息服务(IIS)管理器--Web服务扩展--ASP.NET

  • asp.net利用HttpModule实现防sql注入

    1.新建一个类,实现IHttpModule接口 代码 复制代码 代码如下: public class SqlHttpModule : IHttpModule { public void Dispose() { } public void Init(HttpApplication context) { context.AcquireRequestState += new EventHandler(context_AcquireRequestState); } } 在实现接口的Init方法时,我们选

  • Asp WinHttp.WinHttpRequest.5.1 对象使用详解 伪造 HTTP 头信息

    由于微软封锁了 XmlHttp 对象,所以无法伪造部分 HTTP 头信息,但是 WinHttp.WinHttpRequest.5.1 对象,它居然用可以成功伪造所有 http 请求的 header 信息! 从msdn得知,WinHttp.WinHttpRequest.5.1 是 msxml 4.0 的底层对象,也就是说 XMLHTTP/ServerXMLHTTP 也是在它的基础上封装而来,WinHttpRequest 的用法与 XmlHttp 大致相同. WaitForResponse 在使用异

  • 解决ASP中http状态跳转返回错误页的问题

    IIS默认的错误页是很不友好的,很多人看到默认的错误页时都会说:网站打不开了!白白损失了这部分流量.而如果错误页直接跳转到首页又对搜索引擎很不友好,搞不好首页还会被封掉.所以根据情况,有两个方法解决这个问题: 如果是博客等内容型的网站,可以返回一个带有404错误的搜索框让访客搜索,若是电子商务型网站,则可以返回一个带有404错误的进度条进行跳转.这两种方法即照顾了访客又顾及到了SEO. 可以在Google webmaster tools中查看自己网站错误页有多少. 修改默认错误页的方法很简单:在

  • asp中利用xmlhttp抓取网页内容的代码

    需要分件html源代码 此例中的被抓取的html源代码如下 <p align=left>2004年8月24日星期二:白天:晴有时多云南风3-4级:夜间:晴南风3-4级:气温:最高29℃最低19℃ </p> 而程序中是从 以2004年8月24日为关键字搜索,直到</p>结速 而抓取的内容就变成了"2004年8月24日星期二:白天:晴有时多云南风3-4级:夜间:晴南风3-4级:气温:最高29℃最低19℃ " 干干净净的了.记录一下. 复制代码 代码如下:

  • Asp.net XMLHTTP封装类(GET,Post发送和接收数据)

    复制代码 代码如下: /**************************************************************** * 函数名称:SendCommand(SendMethod method, ST_Param p) * 功能说明:向远程发送URL和参数,接受返回信息(无乱码); * 参 数:method:xml发送方法,POST/Get 两种 P:参数结构体 public string Url; //远程URL public string Parameter

随机推荐