angular - Angular HttpClient 使套接字保持打开状态
问题描述
我有一个 Angular 服务来处理我对 Apache 服务器的 REST 调用。在某些情况下,用户连续进行多个 REST 调用。发生这种情况时,Chrome 将为每个请求打开一个套接字。插座保持打开状态 60 秒且不重复使用。最终达到限制,所有后续请求都被保留为“待处理”,直到套接字被清除。我研究了 Chrome“等待可用套接字”问题,但是所有解决方案都指向通过 Chrome 清除套接字的客户端修复。在我的 localhost Apache 服务器上点击我的 REST API 时不会出现此问题。
我认为必须有一个服务器端解决方案或 Angular 中的一种方法来清除或重置套接字。
我正在使用:Chrome 版本 68.0.3440.106 Ubuntu 16.04 Apache 版本 2.4.7
解决方案
在 REST 调用返回后运行的辅助脚本使套接字保持打开状态。这些脚本在 60 秒时超时(服务器上缺少资源)。因此,在我最初进行了 6 个(Chrome 套接字限制)REST 调用并成功返回之后……辅助脚本保持套接字打开,直到它在服务器上超时。
推荐阅读
- git - 突然无法推送到 git 仓库
- node.js - 如何根据参考/模型填充字段?
- delphi - 如何列出用户在 Delphi 中创建的 Pastebin 粘贴?
- javascript - 对象方法中的 Javascript 函数:什么时候应该(也不应该)在函数中包含 return?下面的示例代码
- protractor - 量角器 - 黄瓜不从示例中挑选值
- python - 在列表理解中使用 break
- amazon-web-services - 用于 CodeDeployProvisioningDeploymentId 标记的 Terraform ignore_changes
- oracle - 有效地使用索引与组进行自联接
- html - 反应式表单(无法读取 null 的属性错误)
- xslt - XPath 表达式中的调用函数