之前使用ajax,都没有太过注意他的同步异步问题,今天遇到了。在这里记录下,特别关注下async这个属性,ajax默认为异步传输机制,也就是默认async为ture,但是在有些场景下面需要同步传输机制,也就是需要将async改为false。例如:在前台数据提交的时候需要一个重要的数据,这个数据安全性要求比较高,不能够加载在js中显示给用户看到,需要在特定的场景的时候去后台读取,若是用异步传输,则取得后台的数据,有可能ajax都还没与返回,程序都执行完成,也就是说所取得的数据此刻已经没有意义。那么我们需要怎样来避免这样的问题呢?很显然,我们在ajax去后台取数据的时候,需要让程序停下来,等待ajax返回,这就是典型的同步机制。
关于同步和异步:异步是指,我需要什么数据,我告诉程序过后,我就走了,再等待程序返回给我数据,也就是说,在接下来的程序执行中,我不在乎程序返回给我的数据是不是我想要的,是不是合法的,甚至不在乎程序响不响应我的请求。而同步则是指,当我请求特定数据过后,我会等待程序返回,确保程序取得的是我需要的合法有用的数据。我甚至会关心程序走到了哪一步,执行了哪些内容,发生了哪些错误。等等。
以前,总是听老师枯燥的唠叨同步异步,今天终于自己有深刻的体会了。特此记录。
分享到:
相关推荐
在文档中提出了两种解决Ajax同步异步问题的方法: 1. 回调函数解决方案: 这种方法是在Ajax请求成功完成后,通过回调函数来执行依赖于异步数据返回的操作。例如,在文档提供的代码片段中: ```javascript $.get...
同步AJAX流程与异步基本一致,只是`open()`方法的第三个参数设为`false`,使得浏览器等待请求完成再继续执行后续代码。 总结来说,AJAX异步通信提供了更优秀的用户体验,因为它允许用户在等待服务器响应的同时进行...
在Web开发中,使用AJAX与服务器进行异步通信是常见的需求,jQuery为此提供了便捷的$.ajax()方法。但开发者们可能会遇到一个问题:在$.ajax()方法中,尽管我们试图通过return语句返回一些值,却常常发现这些返回值...
2 同步:MyAjaxs " 要调用的方法页面 方法" 参数 function d {alert d["d"] ;} ;">调用方法:1 将下载好的Ajax js文件引用到页面 代码如下:<script src " js MyAjax js" type &...
然而,有时我们可能会遇到Ajax同步问题,这通常是由于对异步和同步理解不透彻或者配置不当导致的。下面我们将详细探讨这个问题。 在ExtJS中,Ajax请求主要通过`Ext.Ajax`对象来实现。`Ext.Ajax.request()`方法是...
### 关于解决jQuery同步异步的问题 在前端开发过程中,我们经常会使用到jQuery库来进行DOM操作及Ajax请求等。而在处理Ajax请求时,默认情况下jQuery的`$.ajax()`方法是采用异步的方式执行的,这对于大部分场景来说...
实现Ajax同步请求的方式是通过设置`async`属性为`false`。在jQuery中,可以通过AJAX调用的选项中设置`async: false`来达到这一目的。然而,需要注意的是,在实际开发中,推荐使用异步模式,因为同步模式会阻塞浏览器...
**Ajax 实现异步通信详解** Ajax(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新,大大提升了用户...
标题中的知识点包括“jquery ajax 同步异步执行”的解决方案,即通过设置`async`属性的不同值来控制AJAX请求是同步执行还是异步执行。描述部分讲述了同步执行的一个关键点,即在AJAX请求完成前,程序会等待,不会...
总结一下,解决js ajax同步请求造成浏览器假死的问题的关键在于理解浏览器单线程的特性及其在执行同步请求时会阻塞UI线程的行为。开发者可以通过使用异步请求或将耗时的请求操作放入setTimeout等JavaScript定时器中...
最近的项目用了到AJAX同步。这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个AJAX执行完毕后才会继续运行其他代码页面假死状态解除。 而异步则这个AJAX代码...
对新手学ajax 有帮助。希望大家能够喜欢和利用。
- `true`代表异步,`false`代表同步。 3. **服务器端处理**:服务器端根据请求处理并返回部分数据。 4. **处理响应数据** ```javascript if (xhr.readyState == 4 && xhr.status == 200) { var txt = xhr....
AJAX分为同步(synchronous)和异步(asynchronous)两种方式: 1. 同步AJAX:请求发出后,浏览器必须等待服务器响应完成后才能继续进行其他操作,这期间浏览器会呈现挂起状态,用户不能进行任何操作。虽然这种方式...
### Ajax页面局部异步刷新技术 #### 知识点概览 在现代Web开发中,异步刷新技术是一项非常重要的技术,它使得网页无需重新加载整个页面就能与服务器交互并更新部分数据。其中,最典型的技术就是Ajax(Asynchronous ...
2. **初始化请求**:设置HTTP方法(GET或POST)、URL和请求类型(同步或异步)。 3. **发送请求**:向服务器发送数据,如果使用POST方式,需要在send()方法中传递参数。 4. **处理响应**:监听XMLHttpRequest对象的...
javascript发送ajax请求,获取返回值res,async 同步/异步 var res = sendRequest({ url : "1.php", //necessary method : "post", params : { param1 : "123", param2 : "234" }, async : false });
jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步。这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出现
3. AsyncPostBackTrigger和PostBackTrigger:AsyncPostBackTrigger用于触发UpdatePanel的异步回发,而PostBackTrigger则用于触发传统的同步回发。 二、jQuery AJAX jQuery是一个流行的JavaScript库,提供了方便的...
综上所述,这段AJAX异步调用代码示例不仅展示了前后台数据同步的基本流程,还涉及了DOM操作、错误处理等多个重要知识点,对于理解和应用AJAX技术具有较高的参考价值。在日常开发中,灵活运用这些知识,可以有效提升...