注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

phperwuhan的博客

记载一个phper的历程!phperwuhan.blog.163.com

 
 
 

日志

 
 

XMLHTTP在使用过程中的几点体会  

2010-03-29 16:49:16|  分类: ajax |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

来源:http://www.ugia.cn/?p=10

前些天帮朋友做一个网页呼叫系统,就是客户端打开网页呼叫窗口同服务器端的客服人员进行交谈,尝试了几种不同的无刷新实现方法: 一是脚本替换技术,这个使用起来非常简单,但是在收发数据时浏览器会有反应,状态栏信息和鼠标闪烁,感觉起来还是在刷新,至少看起来非常不舒服。所以转向XMLHTTP。

以前一直以为XMLHTTP只能在IE中使用,所以一开始没有考虑它,前几天Dark 让我帮他修改一个WP的插件livesearch,其中就是使用的xmlhttp,分析源码和查看msdn上的相关资料后,基本实现了所需要的功能。效果不错。

xmlhttp对象的创建方法(不同浏览器)

if (window.XMLHttpRequest) {

    var objSrvHTTP = new XMLHttpRequest();

} else {

    var objSrvHTTP = new ActiveXObject("Microsoft.XMLHTTP");

以前一直使用xmlhttp的同步方式,会造成浏览器短时间没有响应,所以使用异步方式:

with(objSrvHTTP){

    try{

        open("GET",strUrl, true);

        send(null);

        onreadystatechange = getReady

    }

    catch(e){

    }

对象状态发生变化时调用getReady

function getReady(){

    if(objSrvHTTP.readyState == 4) {

        var s = objSrvHTTP.responseText;

        if(s != ""){

            eval(s);

        }

    }

这就是几个比较关键的地方,希望对以后的应用有所帮助!

附:XMLHTTP对象的属性和方法列表:

Name Type Description
onreadystatechange N/A 指定当就绪状态发生改变时调用的事件处理函数,仅用于异步操作 
readyState Long 异步操作的状态:未初始化(0),正在加载(1),已加载(2),交互(3),已完成(4)
responseBody Variant 将响应信息正文作为unsigned byte数组返回
responseStream Variant 将响应信息正文作为一个ADO Stream对象返回
responseText String 将响应信息正文作为一个文本字符串返回
responseXML Object 通过XMLDom将响应信息正文解析为XMLDocument对象
status Long 服务器返回的HTTP状态码
statusText String 服务器HTTP响应行状态

Name Desciption
abort 取消当前 HTTP 请求
getAllResponseHeaders 从响应信息中检索所有的标头字段
getResponseHeader 从响应信息正文中获得一个 HTTP 标头值
open(method, url, boolAsync, bstrUser, bstrPassword) 打开一个与 HTTP 服务器的连接
send(varBody) 设定一个请求的标头字段
setRequestHeader(bstrHeader, bstrValue) 向 HTTP 服务器发送请求。可包含正文。

open方法:

Parameter Description
method HTTP的通信方式,比如GET, HEAD, POST, PUT, DELETE, CONNECT等
url 接收数据的服务器的URL地址,URL可带QueryString
boolAsync 一个布尔标识,说明请求是否为异步的。如果是异步通信方式,客户端就不等待服务器的响应;如果是同步方式,客户机会等到服务器返回消息后才去执行其它操作
bstrUser 用户ID,用于服务器身份验证
bstrPassword 用户密码,用于服务器身份验证

Permalink

  评论这张
 
阅读(321)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017