`

XMLHTTP---介绍

阅读更多
MSXML中提供了Microsoft.XMLHTTP对象,能够完成从数据包到Request对象的转换以及发送任务。
创建XMLHTTP对象的语句如下:
Set objXML = CreateObject("Msxml2.XMLHTTP") 或
Set objXML = CreateObject(“Microsoft.XMLHTTP”)
' Or, for version 3.0 of XMLHTTP, use:
' Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP")
对象创建后调用Open方法对Request对象进行初始化,语法格式为:
poster.open http-method, url, async, userID, password
Open方法中包含了5个参数,前三个是必要的,后两个是可选的(在服务器需要进行身份验证时提供)。参数的含义如下所示: 
http-method: HTTP的通信方式,比如GET或是 POST
url: 接收XML数据的服务器的URL地址。通常在URL中要指明 ASP或CGI程序
async: 一个布尔标识,说明请求是否为异步的。如果是异步通信方式(true),客户机就不等待服务器的响应;如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作
userID 用户ID,用于服务器身份验证
password 用户密码,用于服务器身份验证
XMLHTTP对象的Send方法
用Open方法对Request对象进行初始化后,调用Send方法发送XML数据:
poster.send XML-data
Send方法的参数类型是Variant,可以是字符串、DOM树或任意数据流。发送数据的方式分为同步和异步两种。在异步方式下,数据包一旦发送完毕,就结束Send进程,客户机执行其他的操作;而在同步方式下,客户机要等到服务器返回确认消息后才结束Send进程。
XMLHTTP对象中的readyState属性能够反映出服务器在处理请求时的进展状况。客户机的程序可以根据这个状态信息设置相应的事件处理方法。属性值及其含义如下表所示:
值 说明
0 Response对象已经创建,但XML文档上载过程尚未结束
1 XML文档已经装载完毕
2 XML文档已经装载完毕,正在处理中
3 部分XML文档已经解析
4 文档已经解析完毕,客户端可以接受返回消息
客户机处理响应信息
客户机接收到返回消息后,进行简单的处理,基本上就完成了C/S之间的一个交互周期。客户机接收响应是通过XMLHTTP对象的属性实现的:
● responseTxt:将返回消息作为文本字符串;
● responseXML:将返回消息视为XML文档,在服务器响应消息中含有XML数据时使用;
● responseStream:将返回消息视为Stream对象

------就是下面这个很简单的JAVASCRIPT函数SEND(STR,URL)---------------
使用到的是XMLDOM和XMLHTTP对象.用这种技术的好处是:全JS控制,方便/简单,比RDS
或者remote好多了.(前提:服务器端和客户端都必须安装IE5或者更高版本),在俺贴的
那个无刷新在线信息功能使用的也是这种技术.有兴趣的朋友可以看看..
function Send(Str,URL)
//STR参数是传入的XML数据,你也可以传入其他文本数据.
//不过这个函数需要服务器端处理之后返回XML数据,你也可以修改一下
//URL参数表示你所要处理数据的ASP文件地址
{
var Http = new ActiveXObject("Microsoft.XMLHTTP") //建立XMLHTTP对象
var Dom = new ActiveXObject("Microsoft.XMLDOM") //建立XMLDOM对象
Http.open("POST",URL,false)
//第一个参数的意思是,用"POST"方式发送数据.可以大到4MB,也可以换为"GET".只能256KB
//第2个参数的意思是数据发送到哪个文件处理
//第3个参数意思是同步或异步方式.TRUE为异步,FALSE为同步
Http.send(Str) //开始发送数据.............嘟嘟..
Dom.async=false //设置为同步方式获取数据
Dom.loadXML(Http.responseText)
//开始获取服务器端处理后返回的数据.我在这里设置必须为XML数据,否则出错.
//你也可以自己修改.使返回的是2进制或者记录集数据.................................
if(Dom.parseError.errorCode != 0) //检查是否发生获取数据时错误
{
delete(Http)
delete(Dom)
return(false)
}
else
{
var Back = Dom.documentElement.childNodes.item(0).text
//得到返回的XML数据,我这里假设处理程序只返回一行XML数据(一个节点)
delete(Http)
delete(Dom)
return(Back) //函数返回数据.......................结束
}
}
 
VAR CAT = Send("<用户资料><姓名>谢柠檬</姓名></用户资料>","HTTP://WWW.CHINAASP.COM/VIVA.ASP ") //执行函数
IF(CAT == FALSE)
{
ALERT("对不起.处理程序返回的是FALSE.数据处理已经失败........")
}
ELSE
{
IF(EVAL(CAT))
{
ALERT("OK.数据已经发送成功.兼以处理完成!!!!!!")
}
ELSE
{
ALERT("对不起.处理程序返回的是FALSE.数据处理已经失败........")
}
}
 
===============================VIVA.ASP============================
ON ERROR RESUME NEXT
DIM BOBO
DIM MOMO
SET BOBO = SERVER.CREATEOBJECT("MICROSOFT.XMLDOM")
BOBO.ASYNC = FALSE
BOBO.LOAD REQUEST
IF BOBO.PARSEERROR.ERRORCODE <> 0 THEN
RESPONSE.WRITE("<程序处理结果><最终结果>FALSE</最终结果></程序处理结果>")
ELSE
SET MOMO = BOBO.DOCUMENTELEMENT
IF MOMO.CHILDNODES.ITEM(0).TEXT = "谢柠檬" THEN
RESPONSE.WRITE("<程序处理结果><最终结果>TRUE</最终结果></程序处理结果>")
ELSE
RESPONSE.WRITE("<程序处理结果><最终结果>FALSE</最终结果></程序处理结果>")
END IF
END IF
SET BOBO = NOTHING
分享到:
评论

相关推荐

    易语言xmlhttp简单应用

    易语言XMLHTTP简单应用主要涉及的是使用易语言编程来实现...以上就是关于易语言XMLHTTP简单应用的基本介绍,通过学习和实践,你可以掌握利用易语言进行网络通信的技术,从而实现更复杂的应用,如网页抓取、数据交换等。

    在VC中使用XMLHTTP

    本文将详细介绍如何在VC++ 6.0环境中正确初始化并使用XMLHTTP对象,同时也会针对提供的代码示例进行分析与优化建议。 #### 二、XMLHTTP简介 XMLHTTP是Microsoft为Web服务提供的一个COM组件,它提供了一个简单的...

    XMLHTTP参考(HTML格式)

    这个参考手册,以HTML格式呈现,详细介绍了XMLHTTP对象的使用方法,对于那些希望不依赖特定框架独立开发AJAX应用的开发者来说,是一个极其宝贵的资源。 XMLHTTP对象是微软在Internet Explorer 5中引入的一个ActiveX...

    详解XMLHTTP控件的应用

    通过以上介绍和示例,我们可以看到XMLHTTP控件在与Web服务进行交互方面的强大能力。无论是获取数据还是模拟用户操作,XMLHTTP都是一个非常有用的工具。掌握它的使用方法不仅能够提高开发效率,还能帮助开发者解决...

    VB使用Microsoft.XMLHTTP判断程序是否联入互联网

    本文将详细介绍如何仅使用 `Microsoft.XMLHTTP` 对象而无需额外控件来实现这一功能。 #### 一、基础知识简介 1. **Microsoft.XMLHTTP**:这是一个内置的COM组件,用于处理HTTP请求和响应。它允许开发者通过脚本...

    XMLHTTP.rar_xmlhttp

    `XMLHTTP.chm`文件可能是一个帮助文档,包含了关于XMLHttpRequest更详细的API介绍、示例代码和常见问题解答。`www.pudn.com.txt`可能是从pudn网站下载的相关资料,可能包含使用XMLHTTP的实践经验或者相关教程。 ...

    XmlHttp.rar_xmlhttp

    以下是XmlHttp对象的主要属性和方法的详细介绍: 1. **open()** 方法:此方法初始化一个HTTP请求。它接受三个参数,分别是请求的类型(GET、POST等)、请求的URL以及一个布尔值,表示请求是否异步。例如,`xmlhttp....

    e语言-Ajax XmlHttp对象参考手册

    资源介绍:XmlHttp是什么?最通用的定义为:XmlHttp是一套可以在Javascript、VbScript、Jscript等脚本语言中通过http协议传送或从接收XML及其他数据的一套API。XmlHttp最大的用处是可以更新网页的部分内容而不需要...

    Microsoft.XMLHttp组件的属性方法

    通过以上介绍,我们可以看到`Microsoft.XMLHttp`组件提供了丰富的API,允许开发者轻松地发起HTTP请求并处理响应。无论是对于前端还是后端开发人员来说,熟练掌握这些API都是非常有益的。需要注意的是,随着现代...

    VB XMLHTTP 支持大文件分段与断点下载函数.rar

    下面将详细介绍这些知识点。 首先,让我们理解什么是分段下载。分段下载是指将一个大文件分成多个小部分(或称为“块”),然后分别下载这些部分。这种方式可以提高下载速度,因为可以同时下载多个部分,而且对于...

    XMLhttp中文手册

    手册会详细介绍如何创建XMLHttpRequest对象,以及如何利用其方法如`open()`、`send()`、`abort()`等进行操作。 2. **异步请求**:XMLHTTP的核心特性就是异步性,这意味着在发送请求后,浏览器不会阻塞等待响应,...

    利用XMLHTTP技术进行资源整合的研究与实现

    - **具体实现方法**:文章详细介绍了如何利用XMLHTTP技术进行异构数据源的抓取、解析和整合,并给出了具体的实现步骤和技术要点。 #### 五、结论 综上所述,《利用XMLHTTP技术进行资源整合的研究与实现》一文通过...

    易语言源码XMLHTTP方式访问网页.rar

    在"源码使用说明.txt"中,详细介绍了如何运行和调试这段代码,以及可能遇到的问题和解决办法。通过阅读和实践,我们可以更深入地理解XMLHTTP的工作原理和易语言的网络编程。 总之,易语言通过XMLHTTP方式访问网页,...

    关于HTTP及XMLHTTP状态代码一览.txt

    接下来将详细介绍这些状态码。 ##### 1xx 信息性响应 - **100 Continue**:表示客户端应该继续发送请求。通常用于服务器在接收到请求的头部之后,确认客户端可以继续发送请求体。 - **101 Switching Protocols**:...

    《XMLHTTP对象参考手册》 CHM

    本参考手册详细介绍了XMLHTTP对象的各种属性、方法和事件,对于XML编程以及Web应用程序开发人员来说,是一个极其重要的参考资料。 XMLHTTP对象的核心功能在于其能够发起HTTP请求并接收响应,这在构建AJAX...

    e语言-易语言XMLHTTP类模块

    资源介绍:易语言XMLHTTP类模块源码例程程序创建MSXML2.XMLHTTP对象实现XMLHTTP类操作。点评:易语言XMLHTTP类模块源码是易语言对象应用例程。资源作者:易语言源码网资源界面:资源下载:

    xmlhttp中文参考手册

    本中文参考手册详细地介绍了如何利用XMLHttpRequest对象进行AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)编程,从而实现网页的动态更新,而无需刷新整个页面。 在了解XMLHttpRequest之前,我们...

    XmlHttp参考手册(chm)

    6. **跨域请求**:介绍CORS(Cross-Origin Resource Sharing)机制,如何处理同源策略限制,以及如何设置合适的头部来允许跨域请求。 7. **错误处理**:如何优雅地处理网络错误和服务器返回的错误,以及如何调试...

Global site tag (gtag.js) - Google Analytics