原文地址:
http://microboat.iteye.com/blog/427422
在新发布的Ext3.0中,对Ext.lib.Ajax进行了改写,导致无法直接访问其内部的getConnectionObject方法,这对我们自己写同步请求方法带来困难,下面共享一个改写后的Ext3.0的同步请求方法:
Js代码
//同步请求
Synchronize = function(url) {
function createXhrObject() {
var http;
var activeX = ['MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'];
try {
http = new XMLHttpRequest();
} catch (e) {
for (var i = 0; i < activeX.length; ++i) {
try {
http = new ActiveXObject(activeX[i]);
break;
} catch (e) { }
}
} finally {
return http;
}
};
var conn = createXhrObject();
conn.open("GET", url, false);
conn.send(null);
if (conn.responseText != '') {
return Ext.decode(conn.responseText);
} else {
return null;
}
};
使用方法 var result= Synchronize(url);
分享到:
相关推荐
在处理同步请求时要注意,虽然同步请求易于理解和实现,但在高并发场景下可能会阻塞线程,影响程序性能。因此,在现代的异步编程环境中,通常建议使用异步API来提高效率。以上就是关于“Http的同步请求用C#简单编写...
在示例代码中,`NSURLConnection`的`sendSynchronousRequest`方法就是用来发送同步请求的。它会返回服务器的响应数据,但这种阻塞的方式可能会导致应用无响应,因此通常只在非UI线程或后台任务中使用。 2. **异步...
同步请求在发送请求后会阻塞当前线程,直到服务器返回数据为止。这意味着用户界面在此期间将无法响应,直到请求完成。在上述代码示例中,`NSURLConnection`的`sendSynchronousRequest`方法就是用来发送同步请求的。...
总结一下,解决js ajax同步请求造成浏览器假死的问题的关键在于理解浏览器单线程的特性及其在执行同步请求时会阻塞UI线程的行为。开发者可以通过使用异步请求或将耗时的请求操作放入setTimeout等JavaScript定时器中...
XMLHttpRequest 让发送一个HTTP请求变得非常容易。你只需要简单的创建一个请求对象实例,打开一个URL,然后发送这个请求。... 通过XMLHttpRequest生成的请求可以有两种方式来... 主线程中的同步请求会阻塞页面,由于对
这可能导致用户界面(UI)无响应,因此通常不推荐在主线程中使用同步请求。 - **异步请求**:请求在后台线程执行,不会阻塞主线程,允许UI继续更新。当请求完成时,可以通过信号和槽机制或回调函数来处理结果。 4. ...
本文将详细解析如何利用`Ext.Ajax.request`实现同步请求,并探讨其背后的原理和注意事项。 首先,我们需要理解Ajax的本质,它是Asynchronous JavaScript and XML的缩写,虽然现在XML已不再是主要的数据交换格式,但...
1、同步请求可以从因特网请求数据,一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进行下一步操作, 2、异步请求不会阻塞主线程,而会建立一个新的线程来操作,用户发出异步请求后,依然...
上述代码创建了一个`Microsoft.XMLHTTP`对象,这个对象提供了异步和同步的HTTP请求功能。通过调用`.Open`方法初始化请求,然后设置请求头(如果有的话),最后通过`.Send`方法发送请求。请求完成后,`.ResponseText`...
标题中提到的"extjs ajax同步请求所需js"是指ExtJS框架中用于执行同步Ajax请求的相关JavaScript代码。在ExtJS中,Ajax请求通常通过`Ext.Ajax`对象来实现。与传统的异步请求不同,同步请求会阻塞浏览器,直到请求完成...
传统的 AJAX 请求都是异步的,即请求发送后不会阻塞后续代码的执行,而是通过回调函数来处理返回的数据。然而,在某些情况下,开发者可能需要等待 AJAX 请求的结果才能继续执行后续的操作,这时就需要使用同步的 ...
本篇将重点讲解如何使用POST方式发送AJAX请求,并对表单数据进行封装。 一、AJAX基本原理 AJAX基于JavaScript的XMLHttpRequest对象,该对象是浏览器内置的对象,用于在后台与服务器进行通信。通过创建...
标题提到的"ext-basex.js进行Ext.Ajax.request同步请求 FF无法正常"问题,涉及到浏览器兼容性和异步/同步请求的理解。 `Ext.Ajax.request`是ExtJS中的一个方法,用于发起Ajax(异步JavaScript和XML)请求。它可以...
既能发送同步请求(是指在单进程单线程的代码中,发起一次请求后,在收到返回结果之前,不能发起下一次请求),又能发送异步请求(是指在单进程单线程的代码中,发起一次请求后,在等待网站返回结果的时间里,可以...
3. **接口调用**:使用Java的HTTP客户端库(如HttpURLConnection或Apache HttpClient)发起HTTP请求,向企业微信API发送同步请求,携带整理好的数据。 4. **错误处理与重试机制**:调用API时可能会遇到网络问题或...
基于java实现的同步发送请求(根据记录的ID同步删除数据库中的记录),基于Spring+Struts+SpringData框架框架实现
6. **客户端-服务器架构**:在这个系统中,客户端负责监控本地目录变化,并向服务器发送同步请求。服务器端则接收这些请求,处理文件传输,并可能实现一些高级功能,如权限控制、日志记录、错误处理等。 7. **并发...
参数包括请求类型(GET)、URL地址和是否为异步请求(这里为同步请求,即`false`)。 4. **发送HTTP请求**: ```sql EXEC @hr = sp_OAMethod @win, 'Send' ``` 调用`Send`方法来实际发送HTTP请求。 5. **获取...
javascript发送ajax请求,获取返回值res,async 同步/异步 var res = sendRequest({ url : "1.php", //necessary method : "post", params : { param1 : "123", param2 : "234" }, async : false });