Ajax是什么

Ajax是什么

Ajax是Asynchronous JavaScript XML的缩写,被译为异步JavaScript和XML。Ajax本身并不是
一个新技术,而是一个在2005年被Jesse James Garrett提出的新术语,用来描述一种使用现有技
水集合的“新”方法。
当使用Ajax模型,HTML页面能够快速地将数据逐步更新显示在用户界面上,不需要重载(刷新)
整个页面。这使得HTMIL页面能成更快速地对用户的操作进行反馈。
尽管Ajax中的“X”代表XML,但由于JSON的许多优势,目前JSON的使用比XML_更加普遍。
JSON和XML_都被用于在Ajax模型中封装数据。

Ajax涉及的技术

Ajax只是为实现异步交互的手段,不是一种技术,而是多种技术的整合。其中包括以下几种技术:

  • HTML页面
  • Cascading Style Sheets ( CSS)
  • JavaScript脚本语言
  • Document Object Model (DOM)
  • XML
  • XMlLH1ttpRequest对象

上迹技术中,XMLHttpRequest对象是实现Ajax异步交互的核心。

Ajax的工作原理

在这里插入图片描述

Ajax的核心对象

实现Ajax异步交互的核心就是XMLHttpRequest对象,该对象为客户端提供了在客户端和服务器之
间传输数据的功能。
XMlLHHtpRequest对象提供了一个通过URL来获取数据的简单方式,并且不会使整个页面刷新。这
使得网页只更新一部分页面而不会打扰到用户。
XMlHltpRequest对象最初由微软设计,随后被Mozilla、Apple和Google采纳。如今,该对象已经
被W3C组织标准化。通过该对象,可以很容易地得到一个URL上的资源数据。尽管名字里有XML,
但XMl.HttpRequest对象可以得到所有类型的数据资原,并不局限于XML格式的数据。

实现Ajax的执行步骤

实现Ajax异步交互需要服务器端逻辑进行配合,而作为客户端的HTML页面需要完成以下步骤:

  1. 创建Ajax的核心对象XMlHttpRequest对象
  2. 通过XMlLHttpRequest对象的open()方法与服务器端建立连接
  3. 构建请求所需的数据内容,并通过XMLHttpRequest对象的send()方法发送给服务器端
  4. 通过XMLHttpRequest对象提供的onreadystatechange事件监听服务器端的通信状态
  5. 接收并处理服务器端向客户端响应的数据结果
  6. 将处理结果更新到HTML页面中

创建Ajax的核心对象

虽然XMLHttpRequest对象目前由W3C组织进行标准化,但在不同浏览器中,创建的方式略有不同。

在这里插入图片描述

通过Ajax异步请求数据

GET请求方式

Ajax异步交互中使用GE丁请求方式的话,需要注意以下几个问题:
1.将构建的请求数据添加到open()方法中的url地址中,如下示例代码所示:

httpRequest.open('GET','http://www.wolongxueyuan.org/some.file?name=wolongxueyuan&password=123456', true);

上述示例代码中,“name=wolongxueyuan&password=123456”表示请求数据

2.将发送请求数据的send()方法中参数设置为null值,如下示例代码所示:

httpRequest.send(null);

POST请求方式

Ajax异步交互中使用POST请求方式的话,需要注意以下几个问题:
1.调用send(方法之前,需要通过XMLHttpRequest对象的setRequestHeade()方法设置请求头
信息。

httpRequest.setRequestHeader(header, value);
  • header:将要被赋值的请求头名称。
  • value:给指定的请求头赋的值。
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded");

2.通过XMILHttpRequest对象的send()发送请求数据。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值