返回

Javascript(笔记49) - AJAX

发布时间:2023-09-24 20:54:10 155

AJAX 是什么

Ajax(Asynchronous JavaScript and XML) 异步JavaScript和XML;sync 同步的;async 异步的;

客户端与服务器,可以在 不必刷新整个页面 的情况下,与服务器进行异步通讯的技术;

AJAX:只新刷局部页面的技术;

1)Javascript : Ajax技术主要开发语言;

2)HTML/XML/JSON:用于封装请求数据和响应数据;

3)DOM:通过 DOM 修改页面元素,实现页面局部刷新;

4)CSS:改变样式,美化页面效果,提升用户体验;

5)Ajax引擎(核心):即 XMLHttpRequest 对象,以异步方式在客户端和服务器之间传递数据


为什么用AJAX

不刷新整个页面,只刷新局部

1)更新部分页面,有效利用带宽

例如,只是登录,就没必须刷新整个页面;通常表单提交是同步的,提交过程中,页面是不能交互的;

2)提供连续的用户体验

例如,看视频时,点赞和评论等交互行为,不影响视频的正常播放;

3)关键词自动补全或地图加载

例如,搜索框搜索时,关键词在下框自动补全;地图加载时,只显示正在看的区域等;


AJAX工作流程

Javascript(笔记49) - AJAX_javascipt

用户界面,由JS获得用户数据,由AJAX引擎(主要是 XMLHttpRequest对象)发送给服务器;服务器将处理完的局部数据(非整个页面)封装成XML/JSON/HTML的格式返回给引擎,再用DOM和CSS修改和修饰页面渲染给用户;


传统Web与Ajax差异


传统Web

Ajax技术

发送请求方式

提交表单方式发送请求

异步引擎对象发送请求

服务器响应

响应内容是完整页面

响应内容只是需要的数据

客户端处理方式

需要等待服务器响应完成并重新加载整个页面后用户才能进行操作

可以动态更新页面中的部分内容,用户不需要等待请求的响应

同步的理解:空中加油时,俩飞机需保持相同速度和位置;排队做核酸,前面没做完,后面就要等待;

异步的理解:银行取号,取完号后坐一边休息,可以干点别的等待叫号;


XMLHttpRequest

Javascript对象 XMLHttpRequest是整个Ajax技术的核心,提供了异步发送请求的能力;


常用方法

方法

描述

open(method,URL,async)

建立与服务器的连接

method: 请求方式,“GET”(默认) 或 “POST”,需大写

URL:请求地址

async:是否使用异步请求,true(默认) 或 false

send(content)

发送请求

content: 请求参数,只有POST请求才能通过 send() 发送参数

setRquestHeader(header,value)

设置请求头信息,在用 post 请求方式时使用

getAllResponseHeaders

以字符串形式返回完整的 http 标头集


常用属性

属性

描述

onreadystatechange

事件属性,指定回调函数,当 readyState 属性改变时触发执行

readyState

存有的XMLHttpRequest的状态从0到4发生变化。

0:请求未初始化

1:服务器连接已建立

2:请求已接收

3:请求处理中

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

responseText

以文本形式返回响应

responseXML

以XML形式返回响应

status

表示HTTP请求响应的状态

200  服务器响应正常

400  无法找到请求资源

403  没有权限访问

404  访问的资源不存在

500  服务器内部错误

status

以字符串形式返回状态(如:Not Found 404 或 ok 200)

示例:

同步请求示例







特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
ftk学习记(icon篇) 2023-09-24 18:10:15