在服务器端判断request来自Ajax请求(异步)还是传统请求(同步):
两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数
1、传统同步请求参数
accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
accept-charset gb2312,utf-8;q=0.7,*;q=0.7
accept-encoding gzip,deflate
accept-language zh-cn,zh;q=0.5
cache-control max-age=0
connection keep-alive
cookie JSESSIONID=1A3BED3F593EA9747C9FDA16D309AF6B
host 192.168.101.72:8080
keep-alive 300
referer XXX
user-agent Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.15) Gecko/2009101601 Firefox/3.0.15 (.NET CLR 3.5.30729)
2、Ajax 异步请求方式
accept */*
accept-language zh-cn
referer xxx
x-requested-with XMLHttpRequest //表明是AJax异步
content-type application/x-www-form-urlencoded,text/javascript
accept-encoding gzip, deflate
user-agent Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; QQDownload 598; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA; .NET CLR 1.1.4322; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)
host 192.168.101.72:8080
content-length 233
connection Keep-Alive
cache-control no-cache
cookie CSS=undefined; JSESSIONID=1B9AC25036290F7FB6823CCE1A24E541
可以看到 Ajax 请求多了个 x-requested-with ,可以利用它,request.getHeader("x-requested-with"); 为 null,则为传统同步请求,为 XMLHttpRequest,则为 Ajax 异步请求。
转:http://www.cnblogs.com/tony-jingzhou/archive/2012/07/30/2615612.html
分享到:
相关推荐
同步请求会阻塞浏览器,直到请求完成,而异步请求不会。异步请求允许用户在等待响应的同时继续操作页面,提高了用户体验。 七、总结 Ajax异步请求的验证涉及多个方面,包括请求状态的检查、数据解析、错误处理以及...
**Ajax异步请求小结** Ajax(Asynchronous JavaScript and XML)是一种用于创建快速、动态网页的技术,它允许在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。这种技术极大地提升了用户体验,...
在正常情况下,我们推荐使用异步请求,因为它们不会阻塞用户界面,从而允许用户继续与页面上的其他元素交互。然而,在某些特定的场景中,开发者可能会选择同步请求。本文将探讨由同步AJAX请求造成的浏览器假死现象,...
在JavaScript的世界里,AJAX(Asynchronous ...总的来说,理解AJAX的同步和异步请求的区别是开发高效、用户友好的Web应用的关键。选择合适的请求类型,结合良好的错误处理策略,可以大大提高应用程序的性能和用户体验。
javascript发送ajax请求,获取返回值res,async 同步/异步 var res = sendRequest({ url : "1.php", //necessary method : "post", params : { param1 : "123", param2 : "234" }, async : false });
异步请求允许浏览器在发送Ajax请求后继续执行后续的JavaScript代码,不需要等待服务器响应。而同步请求则会使浏览器等待,直到收到服务器的响应后才继续执行后续代码。 在JavaScript中,异步请求是默认的执行模式。...
Blazor提供了`HttpClient`类来处理AJAX请求,与传统的JavaScript解决方案相比,开发者可以享受.NET生态系统的所有优势。 ```csharp @code { private async Task GetData() { var httpClient = new HttpClient();...
jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步。这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出现
首先,我们来看同步和异步这两种通信方式的区别: 1. **同步通信**:在同步模式下,浏览器会阻塞其他所有脚本执行,直到当前的AJAX请求完成。这意味着用户无法进行任何其他操作,直到请求返回结果。这种方式虽然...
综上所述,"Java通过jQuery实现ajax异步请求"的示例工程涵盖了客户端与服务器端的交互流程,包括使用jQuery发起AJAX请求、Java后端处理请求并返回数据,以及数据格式的转换和错误处理。了解并掌握这些知识点,对于...
与传统的异步请求不同,同步请求会阻塞浏览器,直到请求完成并返回结果。虽然这种方式在某些特定场景下可能有用,但大多数情况下,由于其可能导致页面无响应,因此并不推荐使用。 下面将详细解释如何在ExtJS中进行...
在EXTJS库中,`Ext.Ajax.request`是用于发送Ajax请求的核心方法,它支持异步和同步操作。本文将详细解析如何利用`Ext.Ajax.request`实现同步请求,并探讨其背后的原理和注意事项。 首先,我们需要理解Ajax的本质,...
### ExtJS 3.0 AJAX 同步请求详解 #### 一、引言 ExtJS 是一款基于 JavaScript 的开源框架,用于构建现代化的 Web 应用。它提供了丰富的 UI 组件以及强大的数据处理能力,使得开发者能够快速地开发出高质量的企业...
1. **HTTP请求头的差异**:Ajax请求和传统的HTTP请求在头部信息上存在显著区别。这为服务器端提供了判断依据。 2. **`X-Requested-With`标头**:这是最常用的方法之一来识别一个请求是否由Ajax发起。 3. **其他HTTP...
在本示例中,我们需要实现一个功能:当用户在树形菜单中选择某一节点时,通过 AJAX 异步请求向后台添加新的子节点,并在前端动态显示出来。 首先,我们看到 HTML 结构中有一个 `#demo` ID 的 `ul` 元素,它是 layui...
本文将深入探讨jQuery中的异步请求,即AJAX(Asynchronous JavaScript and XML),并提供一个实例来帮助理解。 AJAX是Web开发中的核心技术之一,允许在不刷新整个页面的情况下与服务器进行数据交互。jQuery的$.ajax...
- **跨域问题**:Ajax请求受到同源策略限制,不同域名、协议或端口间的请求可能被阻止。可通过CORS、JSONP等技术解决。 - **兼容性问题**:早期版本的IE浏览器对Ajax支持有限,需要使用ActiveXObject。现代浏览器...
在这段代码中,我们看到一个更复杂的`$.ajax()`调用,其中包含了禁用缓存、同步请求等功能,并将服务器返回的数据存储在变量`xmlStr`中,以便后续处理。 ### 二、总结与应用建议 通过对`$.ajax()`方法的深入解析...
**Ajax异步请求服务器——基于Jquery** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使得网页实现异步更新。在本...
1. 同步请求:将Ajax请求设置为同步(async: false),这样可以确保请求按照发出的顺序执行。但这种方法会导致浏览器阻塞,直到所有请求完成,可能导致页面无响应。 2. 请求队列:手动管理请求队列,当有新的请求时...