javascript - HTTP 请求 - 缺少响应 - net_error = -3 (ERR_ABORTED)

标签 javascript ajax google-chrome ssl xmlhttprequest

我正在使用带有 CORSRESTful API。有时(无法重现何时/为何发生)AJAX 请求被客户端中止并且没有响应出现。这种情况不仅发生在 chrome 中,其他浏览器也会受到影响。我尝试了很多调试并搜索了很多解决方案,但我现在没有找到。服务器处理的所有请求都很好,只有响应被阻止 客户端

以下是基于因错误net_error = -3 (ERR_ABORTED)而中止的请求的chrome://net-internals/#events。大多数情况下,这个问题是在使用 SSL 时出现的,但 SSL 并未在使用中。

2681: URL_REQUEST
http://solid-rm-api/api/role/create
Start Time: 2016-02-23 15:55:16.152

t=97023 [st=   0] +REQUEST_ALIVE  [dt=1930]
t=97023 [st=   0]    URL_REQUEST_DELEGATE  [dt=0]
t=97023 [st=   0]   +URL_REQUEST_START_JOB  [dt=1930]
--> load_flags = 34626 (BYPASS_CACHE | DO_NOT_SAVE_COOKIES | DO_NOT_SEND_AUTH_DATA | DO_NOT_SEND_COOKIES | MAYBE_USER_GESTURE | VERIFY_EV_CERT)
--> method = "POST"
--> priority = "LOW"
--> upload_id = "0"
--> url = "http://solid-rm-api/api/role/create"
t=97023 [st=   0]      URL_REQUEST_DELEGATE  [dt=0]
t=97023 [st=   0]      HTTP_CACHE_GET_BACKEND  [dt=0]
t=97023 [st=   0]      URL_REQUEST_DELEGATE  [dt=0]
t=97023 [st=   0]     +HTTP_STREAM_REQUEST  [dt=1]
t=97023 [st=   0]        HTTP_STREAM_REQUEST_STARTED_JOB
--> source_dependency = 2683 (HTTP_STREAM_JOB)
t=97024 [st=   1]        HTTP_STREAM_REQUEST_BOUND_TO_JOB
--> source_dependency = 2683 (HTTP_STREAM_JOB)
t=97024 [st=   1]     -HTTP_STREAM_REQUEST
t=97024 [st=   1]     +HTTP_TRANSACTION_SEND_REQUEST  [dt=0]
t=97024 [st=   1]        HTTP_TRANSACTION_SEND_REQUEST_HEADERS
--> POST /api/role/create HTTP/1.1
                             Host: solid-rm-api
                             Connection: keep-alive
                             Content-Length: 404
                             Pragma: no-cache
                             Cache-Control: no-cache
                             Origin: http://127.0.0.1:8080
                             User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36
                             App-Token: ABC
                             Content-Type: application/x-www-form-urlencoded;charset=UTF-8
                             Accept: application/json, text/plain, */*
                             Token: 123123123123123123123123
                             Referer: http://127.0.0.1:8080/src/
                             Accept-Encoding: gzip, deflate
                             Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
t=97024 [st=   1]        HTTP_TRANSACTION_SEND_REQUEST_BODY
                         --> did_merge = true
                         --> is_chunked = false
                         --> length = 404
t=97024 [st=   1]     -HTTP_TRANSACTION_SEND_REQUEST
t=97024 [st=   1]     +HTTP_TRANSACTION_READ_HEADERS  [dt=1929]
t=97024 [st=   1]       +HTTP_STREAM_PARSER_READ_HEADERS  [dt=1929]
t=98953 [st=1930]          CANCELLED
t=98953 [st=1930]   -URL_REQUEST_START_JOB
                     --> net_error = -3 (ERR_ABORTED)
t=98953 [st=1930]    URL_REQUEST_DELEGATE  [dt=0]
t=98953 [st=1930] -REQUEST_ALIVE

如果您需要更多信息,请告诉我。

最佳答案

几个月后回到这里。事实证明,net_error = -3 (ERR_ABORTED) 总是由应用程序本身触发的超时中止状态。在我们的例子中,XHR-Timeout 被第三方库全局覆盖。该库将其设置为 2000ms。以这种方式,我们的一些花费超过 2000 毫秒的请求被客户端中止了。结果是 net_error = -3 (ERR_ABORTED)

如果您遇到同样的问题。检查您的代码并确保您的应用程序中设置的超时已根据您的需要进行配置。

关于javascript - HTTP 请求 - 缺少响应 - net_error = -3 (ERR_ABORTED),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35581222/

相关文章:

javascript - 在react-table-2的同一列中显示名字和姓氏

javascript - 创建一个圆形对象并将它们插入数组

javascript - 如何使用jquery读取html表单内容?

php - JQuery 使用 PHP GET 从文本框重新加载 DIV 层

ruby-on-rails - 显示记录计数 - Ruby on Rails - Ajax

google-chrome - 无效的自签名 SSL 证书 - "Subject Alternative Name Missing"

asp.net - WebForm_DoPostBackWithOptions 未使用 chrome 定义

javascript - ".at()"在 JavaScript 中有何用途?它在普通 JavaScript(浏览器 JavaScript)中是否有效?

javascript - 如何在AJAX中形成授权CURL请求?

firefox - 溢出 :hidden works in Firefox but not in Chrome. 为什么?