对AJAX的理解及使用方法

一、ajax概念及优缺点:
1. ajax的概念:
  • AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML)
  • 是一种创建交互式网页应用的网页开发技术。
  • 是一种无需重新加载整个网页的情况下,能够更新部分网页的技术。
  • ajax可以使网页实现异步更新。
2. ajax的优势:
  • 更自然、流畅的用户体验,对用户的操作即时响应。
  • 在不中断用户操作的情况下与web服务器进行通信。
  • 更灵敏的响应用户访问,实现近似于桌面应用程序的交互效果。
  • 通过局部更新页面降低网络流量,提高网络的使用效率。
3. ajax的缺点:
  • ajax干掉了Back和History功能,即对浏览器机制的破坏。
  • 对搜索引擎支持较弱,如果使用不当,ajax会增大网络数据的流量,从而降低整个系统的性能。
  • ajax不能很好支持移动设备。
4. 请求方式 get 和 post 的区别:
  • get请求:
    • get 请求不安全,因在传输过程中,数据被放在请求的URL中。
    • get 的传送的数据量较小,主要是因为受URL长度的限制。
    • get 限制form表单的数据集的值必须是ASCII码。
    • get 的执行效率比 post 好。
  • post请求:
    • post 请求安全性好,所有操作对用户来说都是不可见的。
    • post 传送的数据量较大。
    • post 支持整个 ISO10646字符集。
    • post 的执行效率比 get 慢。
二、ajax的使用:
1. ajax的核心对象:XMLHttpRequest() ;它是ajax的异步操作和服务端交互的主要依赖对象。
2. ajax使用步骤:
  • 创建XMLHttpRequest对象:
	var xhr = new XMLHttpRequest();
  • 设置请求参数:第三个参数true是异步,false是同步
	xhr.open('请求方式', url, true);
  • 发送请求:
	xhr.send();
  • 请求状态发生改变执行的处理函数:
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4 && xhr.status == 200) {
			var data = xhr.responseText;
			// data 就是接收到的响应数据;
			// 可以设置成为:xhr.responseText或xhr.responseXML的数据
		}
	}

  注: post 提交数据只能通过 send 方法向服务器发送数据,且必须设置请求头:

	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
3. XMLHttpRequest()对象的属性:
  • onreadystatechange: 每次状态改变所触发事件的事件处理程序。
  • readyState:0-对象创建完毕,1-正在加载(调用open后),2-加载完毕,3-交互,4-完成
  • status:从服务器返回的数字代码(如:404(未找到)或200(就绪))
三、ajax使用的注意点:

  ajax开发时,需要慎重考虑网络延迟,即用户发出请求到服务器发出响应之间的间隔。不给予用户明确的回应,没有恰当的预读数据,或者对XMLHttpRequest()的处理不当,都会使用户感到延迟,这是用户不希望看到的,也是他们无法理解的。
  通常解决方案是:使用一个可视化的组件,来告诉用户系统正在进行后台操作,并且正在读取数据和内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值