探讨Ajax中同步与异步之间的区别

请求方式,分为GET与POST: GET 最为常见的HTTP请求,普通上网浏览页面就是GET。GET方式的参数请求直接跟在URL后,以问号开始。(JS中用window.location.search获得)。参数可以用encodeURIComponent进行编码,使用方式:
var EnParam = encodeURIComponent(param);

URL只支持大约2K的长度,即2048字符数;使用GET进行AJAX请求时候会缓存导致出现的页面不是正确的,一般方法加random参数值;ajax.send(null)。

POST

向服务器提交数据用到。

需要将form表单中的值先取出转换成字符串,用&符号连接,(同GET传参数一样);提交数据量2GB ;使用ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'),处理提交的字符串;ajax.send(strings),这个strings表示form中需要提交的内容,例如a=1&b=2类似这样的字符串。

同步与异步:

ajax.open方法中,第3个参数是设同步或者异步。prototype等js类库一般都默认为异步,即设为true。先说下同步的情况下,js会等待请求返回,获取status。不需要onreadystatechange事件处理函数。而异步则需要onreadystatechange事件处理,且值为4再正确处理下面的内容。

(注:文中的 ajax 表示XMLHTTP请求对象。)

时间: 2024-10-30 00:49:57

探讨Ajax中同步与异步之间的区别的相关文章

探讨Ajax中同步与异步之间的区别_AJAX相关

请求方式,分为GET与POST: GET 最为常见的HTTP请求,普通上网浏览页面就是GET.GET方式的参数请求直接跟在URL后,以问号开始.(JS中用window.location.search获得).参数可以用encodeURIComponent进行编码,使用方式: var EnParam = encodeURIComponent(param); URL只支持大约2K的长度,即2048字符数:使用GET进行AJAX请求时候会缓存导致出现的页面不是正确的,一般方法加random参数值:aja

jQuery中的ajax async同步和异步详解_jquery

项目中有这样一个需求,使用ajax加载数据返回页面并赋值,然后前端取出该值 这其中涉及到代码的顺序问题,有时后台还未返回数据,但已执行后面代码, 所以就会造成取不到值 $.ajax({ type: "post", url: "admin/PfmOptionRuleItem.do", success: function(data){ $("#ruleItem").val(data.ruleItem); //① } }); return $(&quo

js中同步与异步处理的方法和区别总结

 若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求,下面为大家介绍下js中同步与异步处理的方法和区别,感兴趣的朋友不要错过 在使用异步请求时,有时需要将异步请求的结果返回给另一个js函数,此种情况下会出现未等异步请求返回请求结果,该发送请求所在js函数已经执行完后续操作,即已经执行return ,这样会导致return的结果为空字符.    总结:若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求.    例如:以下例子会出现返回结果不正确的情况,因为ajax异步请

探讨Ajax中有关readyState(状态值)和status(状态码)的问题_AJAX相关

先看下面一段代码,然后给大家详细介绍,Ajax中有关readyState(状态值)和status(状态码)的问题,具体内容如下所示: var getXmlHttpRequest = function () { try{ //主流浏览器提供了XMLHttpRequest对象 return new XMLHttpRequest(); }catch(e){ //低版本的IE浏览器没有提供XMLHttpRequest对象,IE6以下 //所以必须使用IE浏览器的特定实现ActiveXObject ret

探讨Ajax中有关readyState(状态值)和status(状态码)的问题

先看下面一段代码,然后给大家详细介绍,Ajax中有关readyState(状态值)和status(状态码)的问题,具体内容如下所示: var getXmlHttpRequest = function () { try{ //主流浏览器提供了XMLHttpRequest对象 return new XMLHttpRequest(); }catch(e){ //低版本的IE浏览器没有提供XMLHttpRequest对象,IE6以下 //所以必须使用IE浏览器的特定实现ActiveXObject ret

js中同步与异步处理的方法和区别总结_javascript技巧

在使用异步请求时,有时需要将异步请求的结果返回给另一个js函数,此种情况下会出现未等异步请求返回请求结果,该发送请求所在js函数已经执行完后续操作,即已经执行return ,这样会导致return的结果为空字符. 总结:若要在使用ajax请求后处理发送请求返回的结果,最好使用同步请求. 例如:以下例子会出现返回结果不正确的情况,因为ajax异步请求还未执行完,函数已经执行return了, 复制代码 代码如下: function fn(){ var result = " "; $.aja

ajax的同步与异步-同步传输技术和异步传输技术的优缺点是什么?

问题描述 同步传输技术和异步传输技术的优缺点是什么? ajax的同步与异步的优缺点?以及他们有什么不同?最好举个例子,谢谢 解决方案 同步:比如要把数据库的名字提出来显示在页面,A负责从数据库去拿"名字',B负责在页面显示,这时使用同步的话就是当A在去数据库取"名字"的时候,B先不往下执行,等到A把名字拿回来之后再和A一起去前台显示"名字". 异步:异步就是不管A是否已经把"名字"从数据库拿出来没有,A和B各走各的,互不干扰. 上面的例

探讨Ajax中的一些小问题_AJAX相关

1.ajax跨域传递值是所需要的回传的类型为jsonp $.ajax({ url: "http://.......", type: 'GET', dataType: 'JSONP',//js跨域传值 success: function (data) { } }); dataType 类型:String 预期服务器返回的数据类型.如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML.在 1.4 中,JSON 就会生成

以太网交换机中堆叠和级联之间的区别

级联是通过集线器的某个端口与其它集线器相连的,如使用一个集线器UPLINK口到另一个的普通端口:而堆叠是通过集线器的背板连接起来的,它是一种建立在芯片级上的连接,如2个24口交换机堆叠起来的效果就像是一个48口的交换机,优点是不会产生瓶颈的问题.堆叠(Stack)和级联(Uplink)是多台交换机或集线器连接在一起的两种方式. 它们的主要目的是增加端口密度.但它们的 实现方法是不同的.简单地说,级联可通过一根双绞线在任何网络设备厂家的交换机之间,集线器之间,或交换机与集线器之间完成.而堆叠只有在