一、Ajax概述:
是一种在Web应用程序中向服务器发送异步请求并接收异步响应的技术,实现的主要过程是:
1、浏览器中的JS发送请求给服务端
2、服务端把响应信息发送给浏览器中的JS
3、JS通过DOM操作浏览器的局部
补充:DOM(文档对象模型,Document Object Model)。是一种与平台和语言无关的应用程序接口(API),可以动态地访问程序和脚本。
二、JQuery Ajax概述:
在JQuery环境下使用Ajax技术,在不重载全部页面的情况下,实现对网页内容的局部更新。
补充:结合JQuery可比单纯地使用Ajax更便捷地实现页面更新。
三、JQuery技术中常用的参数:
1、url:规定了要发送的URL
2、data:要发送到服务器的数据
3、dataType:预期的服务器响应的数据类型
4、asybc:异步或同步请求,取值TRUE或FALSE,默认为TRUE
5、success():当请求成功时运行的函数
6、beforeSend(xhr):发送
补充:xhr全称为XMLHttpRequest,用于与服务器交互数据,是ajax功能实现所依赖的对象,jquey中的ajax就是对xhr的封装。
XMLHttpRequest对象提供了对HTTP协议的完全的访问,包括做出POST和HEAD请求以及普通的GET请求的能力。XMLHttpRequest可以同步或异步地返回Web服务器的响应,并且能够以文本或者一个DOM文档的形式返回内容。
7、cache:布尔值,表示浏览器是否缓存被请求页面。默认为true。
8、complete(xhr,status):请求完成时运行的函数(在请求成功或失败之后均调用,即在success()和error()函数之后)。
9、contentType:发送数据到服务器时所使用的内容类型。
默认为:"application/x-www-form-urlencoded"。
10、context:与后端的上下文挂钩,相当于ajax的回调函数中的"this"。
11、dataFilter(data,type):过滤器,处理XMLHttpRequest原响应数据的函数。
12、globl:规定ajax事件的请求是否为全局触发,默认值为true。
13、ifModified:规定是否仅在最后一次请求以来响应发生改变时才请求成功,默认为false。
14、jsonp:在一个jsonp中重写回调函数的字符串。
15、jsonpCallback:在一个jsonp中规定回调函数的名称。
16、规定在HTTP访问认证请求中使用的密码。
17、processData:规定通过请求发送的数据是否转换为查询字符串。默认为true。
18、scriptCharset:规定请求的字符集。
19、timeout:设置本地的请求超时时间。
20、traditional:规定是否使用参数序列化的传统样式。
21、type:规定请求的类型(GET或POST)。
22、username:规定HTTP访问认证请求中使用的用户名。
23、password:规定在HTTP访问认证请求中使用的密码。
24、xhr:用于创建XMLHttpRequest对象的函数。
五、jquery中ajax和axios的区别:
1、ajax是对原生XHR(xmlHttpReqest)的封装,axios是一个基于Promise的HTTP库。
2、ajax技术实现了局部数据的刷新,而axios实现了对ajax的封装。
简单说:jQuery将请求技术封装成了ajax,ajax技术实现了网页的局部数据刷新,而通过promis又把ajax进一步封装成了axios。
补充:有了ajax,为什么还要创造出axios:
axios更适合于前端mvvm模式下的数据请求。
ajax更适用于mvc结构项目的数据请求。