首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 网页制作-> 心得技巧
ajax核心:xmlhttp组件相关技术资料_ajax教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 

Ajax核心:XMLHTTP组件相关技术资料

一、数据库远程管理技术

  基于互联网的广域网现代应用中的一个重要环节是数据库远程监控。首先简单回顾一下互联网上的数据库远程管理技术的发展过程和方式: (推荐文章:AJAX专题)

  早期通过编写CGI-BIN程序模块进行数据库远程管理。但CGI-BIN的运行速度慢,维护很不方便,现在已经基本被弃用。

  这几年使用组件对象模型(Component Object Model, COM)的应用非常多,效果也很好。但如果使用的是第三方服务器(笔者的网站就是建立在第三方的虚拟主机上),服务器方往往因为保密或其它商业原因不允许用户注册自己的组件。

  近年来由微软公司推出的.NET平台和SUN公司的J2EE平台都是非常高档的数据库远程管理与服务平台。都能提供优质的多层(n-Tier)应用服务。 其中,.NET的简单对象访问协议(Simple Object Access Protocol, SOAP)使用超文本传输协议(Hypertext Transfer Protocol, HTTP)和扩展标记语言(Extensible Markup Language, XML)技术实现跨系统(例如Windows - Linux)的通讯服务方式已经广为开发商接受和使用。许多大型应用,例如企业资源计划(Enterprise resource planning, ERP)等都建立在这样的大型平台之上。 但对于中小型应用,比如一个网站的建设和维护,这种大型应用平台就显得有些尾大不掉,开销也过于庞大。

  曾经在互联网技术和Java技术方面一度落后的微软公司在XML应用开发则走在了前头。她的XML解析器(MSXML)中的XMLHTTP协议是一个非常方便实用的客户/服务通讯管道。综合运用XMLHTTP以及ActiveX数据对象(ActiveX Data Objects, ADO/ADOX)可以简单方便地实现数据库远程管理。

  二、数据库远程管理体系

  数据库远程管理的任务流程是:

  1、客户端向服务端发出数据库结构和数据的查询或修改指令。

  2、服务端接受并执行有关指令并向客户端返回结果。

  3、客户端接受并显示服务端返回的指令执行结果。

  实现数据库远程管理的二个主要关键环节是:

  1、客户端与服务端之间的指令上传和结果下传的数据通道,由XMLHTTP协议实现。

  2、服务端前沿与数据库之间的指令传送和结果返回,由起着中间层作用的ADO/ADOX接口完成。

  三、XMLHTTP的使用

  顾名思义,XMLHTTP是个传送XML格式数据的超文本传输协议。

  实际上,XMLHTTP的数据传输过程更为灵活一些:

  它上传的指令可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。还可以是URL的参数。

  它下达的结果可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。

  详情可参阅文末链接。

  客户端调用XMLHTTP的过程很简单,只有5个步骤:

  1、创建XMLHTTP对象

  2、打开与服务端的连接,同时定义指令发送方式,服务网页(URL)和请求权限等。

  客户端通过Open命令打开与服务端的服务网页的连接。与普通HTTP指令传送一样,可以用"GET"方法或"POST"方法指向服务端的服务网页。

  3、发送指令。

  4、等待并接收服务端返回的处理结果。

  5、释放XMLHTTP对象

  XMLHTTP方法

  Open bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword

  bstrMethod:数据传送方式,即GET或POST。

  bstrUrl:服务网页的URL。

  varAsync:是否同步执行。缺省为True,即同步执行,但只能在DOM中实施同步执行。应用中一般将其置为False,即异步执行。

  bstrUser:用户名,可省略。

  bstrPassword:用户口令,可省略。

  Send varBody

  varBody:指令集。可以是XML格式数据,也可以是字符串,流,或者一个无符号整数数组。也可以省略,让指令通过Open方法的URL参数代入。

  setRequestHeader bstrHeader, bstrValue

  bstrHeader:HTTP 头(header)

  bstrValue:HTTP 头(header)的值

  如果Open方法定义为POST,可以定义表单方式上传xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"

  XMLHTTP属性

  onreadystatechange:在同步执行方式下获得返回结果的事件句柄。只能在DOM中调用。

  responseBody:结果返回为无符号整数数组。

  responseStream:结果返回为IStream流。

  responseText :结果返回为字符串。

  responseXML:结果返回为XML格式数据。

  下面是本文附件源程序中的一个应用示例:

  Function GetResult(urlStr)

  Dim xmlHttp

  Dim retStr

  Set xmlHttp = CreateObject("Msxml2.XMLHTTP") 创建对象

  On Error Resume Next 出错处理

  xmlHttp.Open "POST", urlStr, False 用POST方式打开连接,异步执行。

  xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 上传表单

  xmlHttp.Send 发送指令

  If Err.Number = 0 Then 如果连接正确

  retStr = xmlHttp.responseText 等待并获得服务端返回的结果字符串

  Else

  retStr = "Url not found" 否则返回出错信息

  End If

  Set xmlHttp = nothing 释放对象

  GetResult = retStr 返回结果

  End Function

  GetResult()函数带入一个服务网页的URL参数,把上传的指令安放在URL后面的参数上,如:

  urlStr = "server.asp?cmd=" & cmd & "&db=" & db & "table=" & table

  cmd:执行方式,例如查询,修改,删除等等。

  db:服务端数据库名

  table:服务端表名

  然后提交指令,等待并接收返回的处理结果。结果以字符串方式返回。最后由函数调用者处理并显示结果。
http://blog.csdn.net/daniao2003/archive/2007/01/29/1496908.aspx


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·Java 调用存储过程-JSP教程,Java技巧及代码
·JSP中文乱码问题的解决.-JSP教程,Java技巧及代码
·Java的网络编程:用Java实现Web服务器-JSP教程,Java技巧及代码
·asp.net连接Access数据库-.NET教程,Asp.Net开发
·VC++.NET 2005 几个比较难缠的问题及其解决方法-.NET教程,.NET Framework
·DropDownList 控件 DataTextField 和 DataValueField 分开绑定-ASP教程,数据库相关
·.Net PetShop 4.0的分布式数据库设计-.NET教程,.NET Framework
·用Asp.net实现新闻分页-.NET教程,Asp.Net开发
·在.NET 2.0 中发送Email-.NET教程,E-mail专题
·逆变桥功率开关管门极关断箝位电路
最新文章
·经典收藏:网页页面常用的特殊符号_心得技巧教程
·用html和css写出漂亮正规的blog_心得技巧教程
·用photoshop优化美眉照片的眼部特写_photoshop教程
·网站页面的均衡规划与选择_心得技巧教程
·关闭远程差分压缩给windows vista拷贝提速_windows vista
·谈google广告的单价与点击-smart_网赚技巧
·用photoshop消除照片中的杂色条纹_photoshop教程
·一个网友观点:两年以来使用div排版的经验_心得技巧教程
·开始使用google adsense_google推广
·google官方讲解noindex、nofollow、noarchive及nosnippet等meta标签用法_google推广
相关主题
西部数码虚拟主机

友情链接
CNNIC 西部数码
万网 自助建站
虚拟主机 asp空间
域名注册 域名
域名申请 主页空间
论坛空间 网站空间
国际域名 虚拟空间
空间租用 DDOS防火墙
成都主机托管 四川主机托管
主机租用 服务器租用
网站目录 自助建站
虚拟主机 网址大全
软件下载
自助链接
虚拟主机资讯 特价虚拟主机
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
发表评论 打印  刷新     关闭