JavaScript学习之旅-15( 原创 )

本文介绍了AJAX技术的基础概念,包括其工作原理及如何通过后台与服务器进行少量数据交换来实现网页的部分更新,避免了传统网页需要重载整个页面的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 上一篇文章 中,主要介绍了DOM的相关知识,了解了JavaScript 能够改变页面中的所有 HTML 元素、 能够改变页面中的所有 HTML 属性、 能够改变页面中的所有 CSS 样式 、能够对页面中的所有事件做出反应,那么这一篇主要学习非常重要的AJAX。

AJAX为什么重要,我们知道移动互联网的时代联网是必须的,不联网也就是失去了基本传输信息的意义。那么,这个联网的过程开发一般称之为Http协议,为什么AJAX重要,下面的文章会重点介绍。

什么是AJAX?

Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。

传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。但是Ajax 是一种用于创建快速动态网页的技术。无需重新加载整个网页的情况下,能够更新部分网页的技术。 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。也就意味可以在不重新加载整个网页的情况下,对网页的某部分进行更新。在 2005 年,Google 通过其 Google Suggest 使 AJAX 变得流行起来。Google Suggest 使用 AJAX 创造出动态性极强的 web 界面

开始使用:

在Android开发中,做网络请求,首先需要构建一个HttpRequest对象、然后添加具体的请求头或者请求体、然后后台server接受请求体以后返回响应体给Android,Android在根据响应体解析数据告知用户成功或者失败或者其他提示,至此一次网络请求流程大抵就是这样。

同样的在AJAX中,首先需要构建一个XMLHttpRequest 对象。所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XMLHttpRequest 对象;IE5 和 IE6 使用 ActiveXObject)

img_99294d967bb11ccae0e46dc64e7676be.png
构建XMLHttpRequest对象

构建完请求对象以后,我们在构建请求方式(POST请求还是Get请求)、请求url,写法如下:

img_5c219716f8271f16a83ff3d85d3862ea.png
构建对象之后的写法


如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:

img_c5d8c6be14b0f2114b1202aeebafe903.png
写法

既然已经构建好了http对象、声明请求方式以及请求url,那么如何接受服务器返回给我们的响应体?

使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。其中,responseText 表示获得字符串形式的响应数据;而 responseXML 是指获得 XML 样式的响应数据。

img_31b636de4e8904a639dbb9d9c0d45b32.png
响应体

但是值得注意的是,当请求被发送到服务器时,我们需要执行一些基于响应的任务。每当 readyState(在XMLHttpRequest 对象中) 改变时,就会触发 onreadystatechange 事件。readyState 属性存有 XMLHttpRequest 的状态信息。readyState存有 XMLHttpRequest 的状态。状态值一般是 0 - 4,具体数值表达的信息如下:

0:请求未初始化

1:服务器连接已建立

2:请求已接收

3:请求处理中

4: 请求已完成,且响应已就绪

status 代表请求后的状态

200: 表示状态Ok

404:未找到页面


状态码拓展:服务器常用的状态码及其对应的含义如下

 200:服务器响应正常。

 304:该资源在上次请求之后没有任何修改(这通常用于浏览器的缓存机制,使用GET请求时尤其需要注意)。

 400:无法找到请求的资源。

 401:访问资源的权限不够。

 403:没有权限访问资源。

 404:需要访问的资源不存在。

 405:需要访问的资源被禁止。

 407:访问的资源需要代理身份验证。

 414:请求的URL太长。

 500:服务器内部错误。

因此,综合上面的内容我们可以总结下AJAX的用法:

A:构建XMLHttpRequest 对象、声明请求方式、请求头或者请求体、声明请求url

B:利用onreadystatechange 监听请求服务器的状态

C:拿到响应体、解析响应体、设置响应体告知用户信息

因此完整的写法如下:

img_aaf20bc7a41c35851f4f415f333b1bd1.png
AJAX写法

红色矩形是响应体信息,拿到这个信息以后我们就可以将其设置在页面上做信息展示。

本篇文章主要学习的是关于AJAX介绍以及使用。本章的基本内容就结束了。

如果这篇文章对你有帮助,希望各位看官留下宝贵的star,谢谢。

Ps:著作权归作者所有,转载请注明作者, 商业转载请联系作者获得授权,非商业转载请注明出处(开头或结尾请添加转载出处,添加原文url地址),文章请勿滥用,也希望大家尊重笔者的劳动成果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值