原生ajax的请求过程

创建全平台兼容的XMLHttpRequest对象:

function getXHR(){  var xhr = null;  if(window.XMLHttpRequest) {// 兼容 IE7+, Firefox, Chrome, Opera, Safari
xhr = new XMLHttpRequest();
} else if (window.ActiveXObject) { try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");// 即MSXML3
} catch (e) { try {
xhr = new ActiveXObject("Microsoft.XMLHTTP");// // 兼容 IE6, IE5,很老的api,虽然浏览器支持,功能可能不完善,故不建议使用
} catch (e) {
alert("您的浏览器暂不支持Ajax!");
}
}
} return xhr;
}

  

Ajax请求数据的过程:

var xhr = getXHR();
xhr.open('GET', url/file,true); //设置请求方式,url,以及是否异步xhr.onreadystatechange = function() { //设置回调监听函数
if(xhr.readyState==4){ if(xhr.status==200){ var data=xhr.responseText; console.log(data);
}
};
xhr.onerror = function() { console.log("Oh, error");
};
xhr.send(); //发送请求

  

原生ajax的请求过程的更多相关文章

  1. 原生ajax的请求函数

    ajax:一种请求数据的方式,不需要刷新整个页面:ajax的技术核心是 XMLHttpRequest 对象:ajax 请求过程:创建 XMLHttpRequest 对象.连接服务器.发送请求.接收响应 ...

  2. 原生ajax异步请求基础知识

    一.同步交互与异步交互的概念: * 同步交互:客户端向服务器端发送请求,到服务器端进行响应,这个过程中,用户不能做任何其他事情(只能等待响应完才能继续其他请求). * 异步交互:客户端向服务器端发送请 ...

  3. 原生ajax的请求封装get和post

    一个完整的AJAX请求包括五个步骤: 1.创建XMLHTTPRequest对象 2.使用open方法创建http请求,并设置请求地址 3.设置发送的数据,开始和服务器端交互 4.注册事件 5.获取响应 ...

  4. 原生Ajax发送请求

    ajax  get&post 1.使用get发送请求,会有请求缓存 1)什么叫请求缓存,请求信息相同浏览器不会再向服务器发送请求,导致访问服务器失败. 2)解决:将随机数添加到请求路径后面参数 ...

  5. javascript js原生ajax post请求 实例

    HTML代码: 注意: xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencod ...

  6. 原生 ajax get请求数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Servlet处理原生Ajax请求

    萌新小白人生中的第一篇博客,难免会有差错,还望各位大佬多多包涵. 1. Ajax技术简介      Ajax(Asynchronous JavaScript and XML,异步JavaScript和 ...

  8. JavaScript之AJAX:原生ajax入门

    背景 传统的Web应用允许用户端填写表单(form),当提交表单时就向网页服务器发送一个请求.服务器接收并处理传来的表单,然后送回一个新的网页,但这个做法浪费了许多带宽,因为在前后两个页面中的大部分H ...

  9. JavaScript入门之AJAX:原生ajax

    背景 传统的Web应用允许用户端填写表单(form),当提交表单时就向网页服务器发送一个请求.服务器接收并处理传来的表单,然后送回一个新的网页,但这个做法浪费了许多带宽,因为在前后两个页面中的大部分H ...

随机推荐

  1. 学习redis遇到的问题

    1. pipeline为什么批量执行速度会变快? 答:是因为在tcp连接中减少了交互往返的时间,因为每次执行还要返回响应值,并且是一条执行完成之后才会执行下一条,但是批量执行只需要一次往返,所以节省了 ...

  2. InitializingBean 和 DisposableBean 指定初始化和销毁方法

    通过实现 InitializingBean 和 DisposableBean 接口,也可以指定 bean 的初始化和销毁方法 二.Student 类 public class Student impl ...

  3. SQL优化的思路及基本原则(mysql)

    SQL优化的思路:  1.优化更需要优化的sql:  2.定位优化对象的性能瓶颈:优化前需了解查询的瓶颈是IO还是CPU,可通过PROFILING很容易定位查询的瓶颈.  3.明确优化目标:  4.从 ...

  4. Android数据库高手秘籍:SQLite命令

    要想熟练地操作任何一个数据库,最最基本的要求就是要懂SQL语言,这也是每个程序员都应该掌握的技能.虽说SQL博大精深,要想精通确实很难,但最基本的一些建表命令,增删改查,大家还是必须要学会的. SQL ...

  5. tableView计算动态行高的总结

    研究tableView怎么计算动态行高研究了两天一直还不太会,今天最终做出来了想要的效果. 首先.我在网上搜集了非常多资料,各种大神的总结,然后開始看.研究.试验,基本思路都是一样的. 1.一定要将l ...

  6. Linux程序设计学习笔记——异步信号处理机制

    转载请注明出处: http://blog.csdn.net/suool/article/details/38453333 Linux常见信号与处理 基本概念 Linux的信号是一种进程间异步的通信机制 ...

  7. ThinkPHP是什么

    ThinkPHP是什么 ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的.最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布.Th ...

  8. 引入jquery.js和jquery-1.10.2.min.js 发生冲突解决办法

    <html><head></head><body><body><div id = "a">a</div ...

  9. UESTC--1265--宝贵资源(简单数学)

    宝贵资源 Time Limit: 1000MS   Memory Limit: 65535KB   64bit IO Format: %lld & %llu Submit Status Des ...

  10. java1.8对集合中对象的特有属性进行排序

    每天学习一点点,知识财富涨点点 1.创建对象user12 2.编写测试类 3.输出结果 加油!!!!