首页 > 解决方案 > 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

标签: angularapacherestgoogle-chrome

解决方案


在 REST 调用返回后运行的辅助脚本使套接字保持打开状态。这些脚本在 60 秒时超时(服务器上缺少资源)。因此,在我最初进行了 6 个(Chrome 套接字限制)REST 调用并成功返回之后……辅助脚本保持套接字打开,直到它在服务器上超时。


推荐阅读