this.http.get 的超时时间不能超过 2 分钟吗? [复制]

2024-04-29

我的 Angular 4.3.2 代码正在调用我的后端服务,需要 2-4 分钟才能返回。仅使用默认值this.http.get代码中,我看到默认超时在 2 分钟后开始。然而,当我尝试设置超过 2 分钟的超时时,它会失败,因为它永远不会让超时超过 2 分钟。

我尝试过 100、100000 (1.7m) 和 114000(1.9m),这些值在这些值下会超时。但是当我尝试 126000 (2.1m)、180000 (3m) 和 1800000 (30m) 时,我再次看到它在 2 分钟后超时。

this.http.get('myUrl')
.timeout(126000)
.map((res: Response) => this.convertResponse(res));

我也尝试过.timeoutWith(126000, Observable.throw(new Error("Timed out")))无济于事。


您无法更改 Web 浏览器的 HTTP 请求的网络超时设置。这timeout()当计时器到达时,运算符会抛出 JavaScript 错误,但这与通信的网络超时无关。

例如;我可以使用timeout()操作符开启any可观察到的。

of("hello").pipe(delay(5000), timeout(1000));

以上将在 1 秒后超时。

我的 Angular 4.3.2 代码正在调用我的后端服务,需要 2-4 分钟才能返回

The server必须在 2-4 分钟的时间内传输 HTTP 标头和部分正文。这是继续 HTTP 连接所必需的,并且客户端无法执行任何操作来保持连接处于活动状态。

HTTP 请求不能快速完成是一种不好的做法。

您可以要求服务器启动任务,然后按一定时间间隔轮询以查看任务是否完成,也可以使用 websockets 与服务器通信并保持连接直到任务完成。

这两种方法都是广泛的主题,我无法详细讨论。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

this.http.get 的超时时间不能超过 2 分钟吗? [复制] 的相关文章

随机推荐

  • 在 Kubernetes API 中启用 CORS

    有没有办法在 Kubernetes API 上启用 CORS 以便我可以使用不同的域向 Kubernetes API 发送 ajax 请求 通过将 cors allowed origins http 参数添加到 etc default ku
  • MySQL:查询之间的最佳索引

    我有一个具有以下结构的表 CREATE TABLE geo ip id bigint 20 NOT NULL AUTO INCREMENT start ip int 10 unsigned NOT NULL end ip int 10 un
  • 在列表中组织 Android Realm 数据

    我正在考虑将我们当前的应用程序迁移到领域 并试图找出将数据组织成令的最佳方式 对于这个问题我将重点关注Photo我的数据模型的对象 但还有其他对象 我的所有数据对象均来自具有以下端点的 API getPopular getNearbyPho
  • 尝试向 HashSet 添加值不会更改其中值的数量

    我有一个HashSet当我使用Add集合方法 不添加任何内容 输出依然是2 3 5 7 11 13和输出 Count is 6 这是一个错误还是我在这里做错了什么 namespace AllerDiz class MainClass pub
  • 向 Matplotlib 等高线图添加水流箭头

    我正在使用 Matplotlib 生成地下水高程等值线 见下文 Here is what I have now how can I add water flow arrows like the image below I want to a
  • 如何使用ffmpeg从avi生成gif? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试使用以下命令将视频的一部分提取到动画 gif 中 ffmpeg i video avi t 5 out gif 它会生成一个 g
  • 正在加载服务帐户 Json 密钥文件

    Google 最近开始为我们提供服务帐户的 Json 密钥文件 而不是 P12 密钥文件 我一直在试图了解这一点 但那里没有太多信息 而我所看到的信息表明这应该有效 string scopes new string DriveService
  • Android Studio无法更新

    我正在运行 Mint 14 Linux 并且在使用 Android Studio 时遇到了一个主要问题 运行更新功能时 所有软件包都会返回 访问被拒绝 状态 我怎样才能解决这个问题 如何授予下载和安装的权限 附加信息 studio sh 正
  • SSIS将字符串变量保存到文本文件

    看起来应该很简单 但到目前为止我还没有找到一种方法将存储在 SSIS 字符串变量中的值保存到文本文件中 我研究过在数据流内部使用平面文件目标 但这需要数据流源 关于如何做到这一点有什么想法吗 使用脚本任务 我刚刚尝试过这个 我创建了一个文件
  • 如何使用 Webpack 同时创建包的“web”和“node”版本?

    有没有一种方法可以使用 Webpack 或 Browserify 一次性创建捆绑包的 web 和 node 版本 捆绑包的 web 版本将在客户端上使用 同一捆绑包的 节点 版本将在服务器上用于预渲染 同构 http nerds airbn
  • 当计算结果在 Linux 中产生非正规数时刷新为零

    我的 C 代码中的计算正在产生逐渐下溢 当发生这种情况时 程序将以 SIGFPE 终止 当计算产生逐渐下溢 非正常 时 如何将结果刷新为零 而不终止执行 我正在一台 redhat linux 机器上工作 谢谢 您还没有指定架构 我猜测它是一
  • pandas:groupby 和可变权重

    我有一个数据集 其中每个观察值都有权重 我想使用以下方法准备加权摘要groupby但我对如何最好地做到这一点感到生疏 我认为这意味着自定义聚合函数 我的问题是如何正确处理不是按项目的数据 而是按组的数据 也许这意味着最好分步进行 而不是一次
  • iOS 11 文件提供程序扩展中的项目

    我有一个带有文件提供程序扩展名的应用程序 我尝试使用此方法为 ios 11 的新文件应用程序提供支持link https developer apple com documentation fileprovider content and
  • 如何将批处理变量设置为另一个脚本的输出

    我尝试将批处理变量设置为另一个命令的输出 在 Linux Unix 中 您可以简单地使用反引号 例如 在 csh 中 set MY VAR tail etc passwd windows 批处理中有类似的东西吗 实际上我已经发现了一些东西
  • 递归循环遍历对象以构建属性列表

    情况 我有一个包含多个子对象和子子对象的大对象 其属性包含多种数据类型 出于我们的目的 该对象看起来像这样 var object aProperty aSetting1 1 aSetting2 2 aSetting3 3 aSetting4
  • 使用存储的日期字段来计算计算当前过去天数的字段

    我正在使用 MySQL 和 phpMyAdmin 我的数据库中有一个 日期 字段 我需要在 MySQL db 中创建一个字段 该字段将计算并显示自每个记录 行的 日期 字段中的日期以来已经过去的天数 我没有能力使用 PHP 即时生成代码 有
  • 如何重新初始化jquery数据表

    如何重新初始化 jQuery 数据表 我什至尝试删除表格元素 该表仍在显示 我的代码是这样的 function removeExistingDataTableReference tableid if oTable null oTable f
  • Delphi:平滑折叠/展开形式

    需要你的帮助 我一直在寻找 我在德尔福西雅图 试图平滑调整表单底部的大小 就我而言 调整大小 只是有点折叠 展开 如下所示 我怎样才能意识到这一点 我尝试过使用 TTimer procedure TForm1 Timer1Timer Sen
  • 在 (BOOL)webView 中:如何打开在 UIWebView 中单击的 URL 以打开模态 UIWebView

    感谢您查看我的问题 让我先描述一下该应用程序 我有一个适用于 iOS5 1 的基于选项卡栏的应用程序 它使用情节提要和 ARC 有四个选项卡 每个选项卡都有一个视图控制器 显示带有本地 HTML 文件的 Web 视图 每个视图是要显示的一组
  • this.http.get 的超时时间不能超过 2 分钟吗? [复制]

    这个问题在这里已经有答案了 我的 Angular 4 3 2 代码正在调用我的后端服务 需要 2 4 分钟才能返回 仅使用默认值this http get代码中 我看到默认超时在 2 分钟后开始 然而 当我尝试设置超过 2 分钟的超时时 它