问题标签 [jqxhr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2020 浏览

jquery - 从失败的 JQuery jqXHR 请求中获取更多信息

我正在使用 JQuery$.when$.get获取一些数据并对其进行处理。当获取它或使用它做某事发生错误时,我想处理该错误,并根据我正在获取的数据/在哪个路径获取它来不同地处理它。

不幸的是,传递给的信息$.when().fail(...)很少,并且不包括该信息。我怎样才能以一种非 hacky [1] 的方式从可延迟的信息中冒泡?

[1]:当然,我可以关闭路径和一些我想要处理失败的全局对象,并在返回.fail()的 Deferred 上处理它。$.get我也可以传递一个没有失败但以某种方式包装失败的 Deferred ,但这也感觉很hacky。

0 投票
1 回答
374 浏览

javascript - 当 HTTP 响应有失败代码时,如何从 JSON 响应中读取属性?

我有这个代码:

服务器端返回一个像这样的 JSON:

但也返回一个 400 代码,因此 Ajax 调用将通过.fail()回调 insted .done()。有了这些信息,我如何error从 JSON 中获取密钥.fail()以显示给用户?

我找到了这段代码:

关于这个主题,但不知道是否正确以及是否会以某种方式影响我的代码。

有什么帮助或建议吗?

0 投票
1 回答
335 浏览

php - jqxhr到本地服务器找不到php文件

我根据 Cimbali 的建议更新了这个问题。这是现在指定请求的 js 代码:

这是我输入一些数据时的控制台输出:

在此处输入图像描述

有什么建议么?请注意,控制台错误之后会立即出现同一文件的“成功”响应。但是php文件仍然没有运行。我没有收到来自服务器的 php 错误响应 - 我也没有看到我放置在 php 文件第一行的嵌入回显echo("Got here!);。即使我注释掉除该行之外的所有内容也是如此。

我不认为它在 php 代码中,但以防万一,这里是:

再次感谢您的浏览。

0 投票
1 回答
890 浏览

jquery - 进度条未正确显示 - 使用 ajax 上传文件

<code>样本1</code>

上面的代码完美地上传文件。如图所示,只有最后一张图像取得了进展。执行console.log( i + ':' + progressValue );此操作时,这也表明仅附加了最后一个图像进度。

更有趣的是,如果我在下面发出警报:

那么我得到的输出是这样的:

<code>示例 2</code>

然后我使用了该setTimeout功能,但这也没有帮助我。是什么导致了这种行为?我希望你们能理解我的问题。任何帮助,将不胜感激。

0 投票
0 回答
3882 浏览

php - 使用 Laravel 4.2 导入 Maatwebsite/Excel 失败

我正在编写一个 Web 应用程序来解析 Excel 文件,每个文件都包含大量数据(约 47 列和数千行)。框架是 Laravel 4.2,使用的包是 laravel-excel (maatwebsite/excel)。

当我编写所​​有代码时,我有一个来自客户的示例文件,它包含 620 行并且一切正常。现在,一些文件可以工作,而大多数文件都不能。错误很奇怪。好的,一步一步来:

逻辑

用户通过 选择一个文件<input type="file">,然后这个文件通过 发送到服务器$.ajax,服务器用这个文件的属性创建一个Job实例并将这个实例返回给客户端。客户端收到此Job实例并查看progress此实例Job即解析的行数)是否低于total即总行数)。如果是这样,则客户端向服务器发送一个请求以执行此操作Job即解析更多行,例如 200)。所以客户端和服务器之间总是有对话,像这样:

  • 客户:尊敬的服务器,我特此上传此文件orders_123.xlsx
  • 服务器:尊敬的客户,谢谢您,我存储了您的文件并创建了Job一个id = 27. 您的文件有total = 623行,当前的progress = 0.
  • 客户: 亲爱的服务器,谢谢您,请用 执行此Job操作id = 27,取200行。尽快回复。
  • 服务器:亲爱的客户,我按照你的要求做了,你现在已经Job有了。id = 27progress = 200
  • 客户端:好的,服务器,请,Job一次又一次地执行此200操作。
  • 就这样继续下去,直到工作完成。

您可能会问为什么我这样做很奇怪,而不是仅仅要求服务器导入所有行,但在这里,我再次发现这里涉及到一些黑魔法,并且这种方式是它大部分时间的唯一方式(否则服务器会失败)。

JavaScript

路线

OrdersFPController@handleOrdersImport

问题是有时当脚本到达时$sheet = Excel::load($path . '/' . $filename_new, function($reader) {})->get();,服务器返回Error 500 (Internal server error)。有时它甚至会杀死我的服务器(不是开玩笑),停止php artisan serve终端中的命令。一些截图:

苹果浏览器

野生动物园 1 http://i.stack.imgur.com/3gkpr.png

野生动物园 2 http://i.stack.imgur.com/m8V4s.png

火狐

火狐 1 http://i.stack.imgur.com/QVceP.png

火狐 2 http://i.stack.imgur.com/IcOQF.png

火狐 3 http://i.stack.imgur.com/xvFoN.png

火狐 4 http://i.stack.imgur.com/flx3K.png

好吧,这就是问题所在。服务器什么也不返回,只是一个错误,没有描述。

编辑:

正如@lukasgeiter 所提到的,我检查了日志文件。当代码为Excel::filter('chunk')->load($path . '/' . $filename_new)->chunk(50, function($results) { /// });时,输出如下:

如果使用常规$sheet = Excel::load($path . '/' . $filename_new, function($reader) {})->get();,则不会将任何内容写入日志文件。

0 投票
1 回答
2762 浏览

ajax - Ajax not working with SSL on IE error code 12019

I am working on a web application built on Java, JSP, Ajax the servers are JBoss with front in Apche 2 server. The application is accessed over the internet. clients are using mostly IE 7, 8, 9 Browsers.

The application was working perfectly before.Recently we applied SSL certificates over the site, after this we started getting complaints from the user that pages where Ajax is applied are not submitting. Normally we call the ajax on submit button and block the page till response is received from the server. we applied loggers and found that the ajax request calls are failed with ajax jqXHR error status as 12019.

We observed that this error is observed by the users where IE (mostly version 8 and 9) is used. the pattern of error is also not same. some time the same user able to submit page who complaint earlier and some time not. i tried best to produce this scenario over my local and development environment but could not.

i google the problem and found something that 12019 error code is a bug of IE. but why it worked before applying the SSL,
and if SSL is not correct why the problem is only at the ajax page why not somewhere else. I cant say users to change the browser.

This driving me crazy for more then a week. Please help me if anyone else has observed and solve this before.

0 投票
1 回答
93 浏览

jquery - 为什么当 jquery ajax 文档说“为了与 XMLHttpRequest 向后兼容”时,它的意思是什么?

我正在查看 jQuery 的ajax方法的当前版本(1.11.2)的文档。它jqXHR以以下行开头对对象的解释:

为了向后兼容XMLHttpRequestjqXHR对象将公开以下属性和方法:

为什么这是“向后兼容”?是否XMLHttpRequest已弃用?如果是这样,如果不通过jqXHR对象访问 HTTP 响应的正确方法是什么?

注意:似乎很多关于.ajax()告诉您使用successand的博客文章error,尽管它们已被弃用。我应该做更多类似的事情:

0 投票
0 回答
312 浏览

javascript - Javascript 无法从 url 获取 Json 数据

我正在尝试使用 Javascript 从我的服务器获取 json 数据,并且我遵循了此处提供的解决方案。但这对我不起作用。我发现 xhr.onload = function() 在我的情况下没有运行。如何弄清楚?

0 投票
1 回答
2104 浏览

javascript - 如何在 jQuery Ajax 中返回数据?

假设我有一个简单的功能:

所以我想要的是在调用它并在调用中添加回调以处理这些错误之后而不是在函数内部处理错误,这可能吗?

0 投票
2 回答
10295 浏览

html - 如何使用ajax设置图片的src?

获取图像时我需要设置一些标题。该img src属性不允许这样做,所以我使用 XHR 请求来获取图像。但是,当我在该请求完成后src在标签上设置属性时img,看起来请求又被触发了。有没有办法缓存图像而不触发第二个请求?

示例代码:

JS 小提琴:https ://jsfiddle.net/mehulkar/o4Lcs5Lo/

注意:我的问题不是关于如何在 xhr 请求中设置适当的标头。我的问题是如何不从src属性设置中触发另一个 GET 并使用来自 XHR 的响应来显示图像。