• XMLHttpRequest对象的创建与用法


    IE5是第一款引入XHR对象的浏览器。在IE5678是通过MSXML库里的一个ActiveXObject对象实现的。其他新的浏览器可直接创建XMLHttpRequest对象

    下面一个兼容创建xhr方法

     1 function createXHR(){
     2             if (typeof XMLHttpRequest != "undefined"){
     3                 return new XMLHttpRequest();
     4             } else if (typeof ActiveXObject != "undefined"){
     5                 if (typeof arguments.callee.activeXString != "string"){
     6                     var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0",
     7                                     "MSXML2.XMLHttp"],
     8                         i, len;
     9             
    10                     for (i=0,len=versions.length; i < len; i++){
    11                         try {
    12                             new ActiveXObject(versions[i]);
    13                             arguments.callee.activeXString = versions[i];
    14                             break;
    15                         } catch (ex){
    16                             //skip
    17                         }
    18                     }
    19                 }
    20             
    21                 return new ActiveXObject(arguments.callee.activeXString);
    22             } else {
    23                 throw new Error("No XHR object available.");
    24             }
    25         }
     1      //创建XHR对象
     2         var xhr = createXHR(); 
    3 //打开请求 4 xhr.open("get", "example.txt", false); //只能向同一域中 使用相同端口和协议的URL发送请求。否则可能引发安全错误

    5 //发送请求 6 xhr.send(null); //send()方法接受一个参数,即请求主体发送的数据,没数据必须传入null 7 8 if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304){ 9 alert(xhr.statusText); 10 alert(xhr.responseText); 11 } else { 12 alert("Request was unsuccessful: " + xhr.status); 13 }

    xhr.resonseText:响应主体被返回的文本

    xhr.status:响应的HTTP状态 。一般将状态码为200作为成功标识;状态码为304标识请求的资源没有被修改,可以直接使用缓存

    xhr.statusText:响应的HTTP状态说明

  • 相关阅读:
    addEventListener-第三个参数 useCapture
    介绍(javascript调试)
    Linux_PXE服务器_RHEL7
    Linux_PXE服务器_RHEL7
    Linux_OpenSSH远程连接
    Linux_OpenSSH远程连接
    Python基本语法_强制数据类型转换
    Python基本语法_强制数据类型转换
    Linux_NetworkManager_RHEL7
    Linux_NetworkManager_RHEL7
  • 原文地址:https://www.cnblogs.com/yijinc/p/5230643.html
Copyright © 2020-2023  润新知