草庐IT

xmlhttprequest-level2

全部标签

javascript - 使用 XMLHttpRequest 时如何向用户显示实际的网络错误?

如果尝试进行Ajax/XMLHttpRequest调用时发生了某种网络类型错误,则XMLHttpRequest.status通常只是“0”。但肯定应该有一种方法可以准确地告诉用户网络错误是什么,例如是DNS解析失败,还是连接被主动拒绝,甚至是连接建立但在发送任何有效的HTTP响应之前中止?IE。至少在JavaScript控制台中打印出一些额外的信息,例如SCRIPT7002:XMLHttpRequest:网络错误0x2efd,由于错误00002efd,无法完成操作。但这不是很友好,我看不出如何从javascript查询该信息以将其转换成我可以向用户显示的内容。我不介意它是否必须针对不同

javascript - Microsoft Edge : XMLHttpRequest: Network Error 0x2efd, 由于错误 00002efd,无法完成操作

我有一个单页html和Angularjs文件。App.jsangular.module('vod',[]).controller('moviesController',['$http',function($http){varself=this;self.movies=[];$http.get('http://localhost:8080/movies/').then(function(response){self.movies=response.data;},function(errResponse){console.error('Errorwhilefetchingmovies');

javascript - XMLHttpRequest onprogress total 在 Chrome 上始终为 0

我试图在同一网站内从一个页面导航到另一个页面之前显示进度条。我的函数将updateProgress函数绑定(bind)到XMLHttpRequestonprogress事件,并将用户重定向到(xhr.readyState==4&&xhr.status==200)上的新页面它似乎工作正常,只是Chrome将“总计”显示为零,这不会让进度条正常运行。我的代码如下。提前致谢...$('.ajaxNavi').click(function(e){e.preventDefault();varurl=$(this).attr('href');varxhr=newXMLHttpRequest();x

javascript - 是否可以跨域使用 XMLHttpRequest

可以通过JavaScript跨站XMLHttpRequest吗?我理解限制以及为什么它通常不能工作,但是从firefox3.5开始有访问控制允许来源:*这应该允许它工作。它告诉浏览器服务器不关心请求是否来自不提供该页面的域。我使用的代码如下。functionsendData(webservicePayload,callbackFunction){varrequest=null;if(!window.XMLHttpRequest){//codeforIEtry{request=newActiveXObject('Msxml2.XMLHTTP');}catch(e){try{request

javascript - XMLHttpRequest progress事件比实际上传快很多

我正在尝试实现一个上传表单并返回上传状态以返回给使用xhr的用户。一切似乎都已正确实现,但是在上传时,回调似乎发生得太快并且返回的百分比比实际发生的要高得多。对于文件~请参阅下面的屏幕抓图,其中显示了74Mb文件中的控制台。这是在上传初始化后几秒钟拍摄的,上传又持续了大约60秒(注意只有3个回调注册(加载的总大小)(计算的百分比)并且ajax上传继续与throbber一起)。有没有人遇到过这种情况并设法准确表示上传状态?(“加载”事件在上传过程后正确触发)这是我的代码:$(this).ajaxSubmit({target:'#output',beforeSubmit:showReque

javascript - 防止 xmlHttpRequest '是浏览器缓存

似乎除了Opera之外的所有浏览器都在我的Javascript程序中缓存了XHR请求。XHR请求中的URL引用服务器上的CGI程序,每次调用时都会生成不同的输出。乙Javascript有没有办法让浏览器不缓存XHR请求? 最佳答案 对于您发出的每个AJAX请求,生成一个唯一值并将其作为查询参数添加到ajaxURL:/example/url/post.php?rand=09809807896768我用来在JS中生成当前的unix时间戳并使用它-这确保我不会得到重复的时间戳。这样每个请求都是唯一的,不会被缓存。这是一个简单但相当常见的A

javascript - 如何使用 XMLHttpRequest 设置 Access-Control-Allow-Origin header

这是根据提供的示例验证geoJSON的代码:functionprocessSuccess(data){if(data.status==="ok")console.log("YoujustpostedsomevalidgeoJSON");elseif(data.status==="error")console.log("TherewasaproblemwithyourgeoJSON"+data.message);}functionprocessError(data){console.log("TheAJAXrequestcouldnotbesuccessfullymade");}$.aj

javascript - xmlhttprequest 同时请求不工作

我正在尝试发出“许多”xhr请求,但似乎每次它在发出另一个请求之前都在等待答案。这就像XHR建立一个队列并始终等待上一个请求完成。如何同时运行更多xhr请求?$('body').delegate('.download','click',function(evt){evt.preventDefault();//Notrelatedvarxhr=newXMLHttpRequest();xhr.open('GET',"proxy.php?"+this.href,true);xhr.responseType='blob';xhr.onload=function(){if(this.status

javascript - XMLHttpRequest 从远程主机获取 HTTP 响应

为什么下面的代码BasedonMozillaexample不起作用?尝试使用Firefox3.5.7和Chrome。varreq=newXMLHttpRequest();req.open('GET','http://www.mozilla.org/',false);req.send();if(req.status==200){alert(req.responseText);}请浏览器从本地磁盘中提取html(file:///C:/Users/Maxim%20Veksler/Desktop/XMLHTTP.html)在Firefox上它给出了以下错误:uncaughtexception:

javascript - XMLHttpRequest 无法加载,请求的资源上不存在 'Access-Control-Allow-Origin' header

这个问题在这里已经有了答案:Howtomakecross-domainAJAXcallstoGoogleMapsAPI?(1个回答)关闭6年前。XMLHttpRequestcannotloadhttp://maps.googleapis.com/maps/api/distancematrix/xml?origins=Affenhausen&destinations=Achenkirch&mode=driving&language=de-DE&sensor=false.No'Access-Control-Allow-Origin'headerispresentontherequested