Ajax简介

一、什么是ajax

ajax(Asynchronous JavaScript And XML)即异步JavaScript和XML,它是一种用于创建快速动态网页的技术。作用是通过在后台与服务器进行少量数据交换,使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

Ajax不是新的编程语言,而是一种使用现有标准的新方法。
Ajax最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。(这一特点给用户的感受是在不知不觉中完成请求和响应过程)
Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。

同步交互:客户端发出一个请求后,需要等待服务器响应结束后,才能发出第二个请求;
异步交互:客户端发出一个请求后,无需等待服务器响应结束,就可以发出第二个请求。

二、实现ajax的基本步骤

创建XMLHttpRequest对象,也就是创建一个异步调用对象. 创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息. 设置响应HTTP请求状态变化的函数. 发送HTTP请求. 获取异步调用返回的数据. 使用JavaScript和DOM实现局部刷新。

三、ajax实现方式

这里我们不做原生ajax的介绍,因为JQuery对ajax进行了封装。可以用少量的代码实现原生ajax的功能,同时又帮助我们解决了浏览器的兼容问题,没有道理不选它。
  $.ajax是对ajax最基础的封装,来看一个简单例子

$.ajax({
    type:"POST",
    url:"${pageContext.request.contextPath}/user/deleteAll",
    data:{userList:userList.toString()},
    success:function () {
        alert("删除数据成功!");
        location.reload();
    },
    error:function () {
        alert("删除数据失败!")
    }
})

关键参数介绍:
method:数据的提交方式
url:数据的提交url
async:是否支持异步刷新,默认是true
data:需要提交的数据
dataType:服务器返回数据的类型,例如xml,String,Json等
success:请求成功后的回调函数
error:请求失败后的回调函数

四、常用请求类型介绍

multipart/form-data类型主要是上传文件时用到;
  application/x-www-form-urlencoded类型主要是提交k-v时用到,当然这种方法也可以将json设置在v中提交json数据;
  application/json类型主要是传递json数据用到,层次比较深的数据;

五、ajax的优缺点

1 优点

Ajax使用JavaScript技术向服务器发送异步请求;
Ajax请求无须刷新整个页面;
因为服务器响应内容不再是整个页面,而是页面中的部分内容,所以Ajax性能高;

2 缺点
滥用技术,造成服务器压力过大

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Ajax中的POST请求是一种向服务器发送数据的方式。与GET请求不同,POST请求将数据作为请求体的一部分发送给服务器,而不是通过URL参数传递。POST请求通常用于向服务器提交表单数据或其他需要传递大量数据的场景。 在底层实现上,使用JavaScript的XMLHttpRequest对象来创建一个Ajax请求。首先,通过open()方法指定请求的方式(POST)和URL地址。然后,设置Content-Type属性为'application/x-www-form-urlencoded',表示请求体中的数据是以查询字符串的形式进行编码。接下来,调用send()方法将数据作为请求体发送给服务器。最后,监听onreadystatechange事件,当请求状态为4且返回状态为200时,即请求成功,可以通过responseText属性获取服务器返回的数据。 在jQuery中,封装了更简便的方式来发送POST请求。可以使用$.ajax()方法,通过设置type属性为'POST',url属性为请求的URL地址,data属性为要发送的数据,dataType属性为预期的服务器响应的数据类型。同时,可以使用success回调函数来处理请求成功后的操作。 需要注意的是,POST请求通常不会被浏览器缓存,因为浏览器认为POST请求提交的内容很可能会有变化,所以每次都会向服务器发送请求,不使用缓存。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Ajax-POST请求](https://blog.csdn.net/qq_43551801/article/details/120049212)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [ajax请求 POST丨ajax简介,ajax提交数据的多种类型](https://blog.csdn.net/wangwei490202517/article/details/128763803)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

追阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值