• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ajax 入门基础之 XMLHttpRequest对象总结
    XMLHttpRequest 提供客户端同http服务器通讯的协议
    一:创建
    IE : http_request = new ActiveXObject("Msxml2.XMLHTTP");
    http_request = new ActiveXObject("Microsoft.XMLHTTP");
    非IE: http_request = new XMLHttpRequest();
    二:onreadystatechange
    指定当readyState属性改变时的事件处理句柄
    语法
    http_request .onreadystatechange = funcMyHandler;
    三:readyState
    返回XMLHTTP请求的当前状态
    变量,此属性只读,状态用长度为4的整型表示.定义如下:
    0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)
    1 (初始化) 对象已建立,尚未调用send方法
    2 (发送数据) send方法已调用,但是当前的状态及http头未知
    3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
    4 (完成) 数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据
    四:responseBody
    返回某一格式的服务器响应数据
    五:responseStream
    以Ado Stream对象的形式返回响应信
    六:responseText
    将响应信息作为字符串返回
    备注
    变量,此属性只读,将响应信息作为字符串返回。
    XMLHTTP尝试将响应信息解码为Unicode字符串,XMLHTTP默认将响应数据的编码定为UTF-8,如果服务器返回的数据带BOM(byte -order mark),XMLHTTP可以解码任何UCS-2 (big or little endian)或者UCS-4 数据。注意,如果服务器返回的是xml文档,此属性并不处理xml文档中的编码声明。你需要使用responseXML来处理。
    七:responseXML 将响应信息格式化为Xml Document对象并返回
    备注
    变量,此属性只读,将响应信息格式化为Xml Document对象并返回。如果响应数据不是有效的XML文档,此属性本身不返回XMLDOMParseError,可以通过处理过的DOMDocument对象获取错误信息。
    八:status 返回当前请求的http状态码
    长整形标准http状态码,定义如下:
    Number Description
    100
    Continue
    101
    Switching protocols
    200
    OK
    201
    Created
    202
    Accepted
    203
    Non-Authoritative Information
    204
    No Content
    205
    Reset Content
    206
    Partial Content
    300
    Multiple Choices
    301
    Moved Permanently
    302
    Found
    303
    See Other
    304
    Not Modified
    305
    Use Proxy
    307
    Temporary Redirect
    400
    Bad Request
    401
    Unauthorized
    402
    Payment Required
    403
    Forbidden
    404
    Not Found
    405
    Method Not Allowed
    406
    Not Acceptable
    407
    Proxy Authentication Required
    408
    Request Timeout
    409
    Conflict
    410
    Gone
    411
    Length Required
    412
    Precondition Failed
    413
    Request Entity Too Large
    414
    Request-URI Too Long
    415
    Unsupported Media Type
    416
    Requested Range Not Suitable
    417
    Expectation Failed
    500
    Internal Server Error
    501
    Not Implemented
    502
    Bad Gateway
    503
    Service Unavailable
    504
    Gateway Timeout
    505
    HTTP Version Not Supported
    备注
    长整形,此属性只读,返回当前请求的http状态码,此属性仅当数据发送并接收完毕后才可获取。
    九:xmlhttprequest:statusText成员
    statusText
    返回当前请求的响应行状态
    十:abort()方法
    取消当前请求
    十一:getallresponseheaders()方法
    获取响应的所有http头
    备注
    每个http头名称和值用冒号分割,并以\r\n结束。当send方法完成后才可调用该方法。
    十二:getResponseHeader 从响应信息中获取指定的http头
    例:
    xmlhttp.getResponseHeader("Server");
    输出http头中的server列:当前web服务器的版本及名称。
    备注
    当send方法成功后才可调用该方法。如果服务器返回的文档类型为"text/xml", 则这句话xmlhttp.getResponseHeader("Content-Type");将返回字符串"text/xml"。可以使用 getAllResponseHeaders方法获取完整的http头信息。
    十三:open()方法 创建一个新的http请求,并指定此请求的方法、URL以及验证信息
    语法
    XMLHttpRequest.open(strMethod, strUrl, blnAsync, strUser, strPassword);
    参数
    strMethod
    http方法,例如:POST、GET、PUT及PROPFIND。大小写不敏感。
    strUrl
    请求的URL地址,可以为绝对地址也可以为相对地址。
    blnAsync[可选]
    布尔型,指定此请求是否为异步方式,默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。
    async是一个布尔值。如果是异步通信方式(true),客户机就不等待服务器的响应;如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作。我们需要根据实际需要来指定同步方式,在某些页面中,可能会发出多个请求,甚至是有组织有计划有队形大规模的高强度的request,而后一个是会覆盖前一个的,这个时候当然要指定同步方式:Flase。
    strUser[可选]
    如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。
    strPassword[可选]
    验证信息中的密码部分,如果用户名为空,则此值将被忽略。
    备注
    调用此方法后,可以调用send方法向服务器发送数据。
    十四:send()方法
    发送请求到http服务器并接收回应
    XMLHttpRequest.send(varBody);
    参数
    varBody
    欲通过此请求发送的数据。
    备注
    此方法的同步或异步方式取决于open方法中的bAsync参数,如果bAsync == False,此方法将会等待请求完成或者超时时才会返回,如果bAsync == True,此方法将立即返回。
    十五:setRequestHeader 单独指定请求的某个http头
    Example:
    复制代码 代码如下:

    var http_request= false;
    function send_request(url)
    { ///初始化、指定处理函数、发送请求的函数

    if (window.XMLHttpRequest) //Mozila
    {
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType)
    {
    http_request.overrideMimeType("text/xml");
    }
    }
    else
    if (window.ActiveXobject) //IE
    {
    try
    {
    http_request = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
    try{
    http_request = new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e) { }
    }
    }

    if (!http_request) // 异常,创建对象实例失败
    {
    alert("不能创建XMLHttpRequest实例!!");
    return false;
    }
    // 指定当服务器返回信息时客户端的处理方式
    http_request.onreadystatechange = processRequest;
    // SPAN twffan="done">确定发送请求的方式和URL以及是否同步执行下段代码
    http_request.open("GET",url,true);
    http_request.send(null);
    }
    //******************************************************************
    function processRequest()
    {
    if (http_request.readyState == 4) // 判断对象状态
    {
    if (http_request.status == 200) // 请求结果已经成功返回
    {
    alert(http_request.responseBody);
    var a = document.getElementById("hh").innerText;
    if (a =="1")
    {
    alert("不可用!!");
    }
    }
    else //页面不正常
    {
    alert("你请求的页面不正常");
    }
    }
    }
    // ********************************************************************
    function userCheck()
    {
    var f = document.Form1;
    var userName = f.username.value;
    if (userName == "")
    {
    alert("用户名不能为空!!");
    f.username.focus();
    return false;
    }
    else
    {
    send_request("alert.aspx?username="+userName)
    }
    }
    您可能感兴趣的文章:
    • jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
    • AJAX XMLHttpRequest对象详解
    • 解析ajax核心XMLHTTPRequest对象的创建与浏览器的兼容问题
    • 如何用ajax来创建一个XMLHttpRequest对象
    • jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
    • AJAX中同时发送多个请求XMLHttpRequest对象处理方法
    • AJAX客户端说明,XMLHttpRequest对象
    • AJax 学习笔记一(XMLHTTPRequest对象)
    • AJAX XMLHttpRequest对象创建使用详解
    上一篇:AJAX 验证框架13个
    下一篇:基于AJAX的分页类实现代码
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ajax 入门基础之 XMLHttpRequest对象总结 ajax,入门,基础,之,XMLHttpRequest,