You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React站点GET请求2分钟后报502错误,如何延长超时时间?

解决GET请求2分钟超时502的方案

1. 检查并调整Axios客户端超时

Axios默认无超时限制,但部分浏览器或自定义配置可能隐含超时,需显式设置足够长的超时时间:

// 创建axios实例时设置超时(15分钟,单位毫秒)
const apiClient = axios.create({
  timeout: 900000,
  baseURL: '/your-proxy-path'
});

2. 补全Node.js代理服务器的超时配置

仅设置server.timeout不够,需覆盖请求级、连接级的所有超时项:

const http = require('http');

const server = http.createServer((req, res) => {
  // 单个请求/响应超时
  req.setTimeout(900000);
  res.setTimeout(900000);
  
  // 你的代理逻辑、EventEmitter等待回调代码...
});

// 服务器级超时配置
server.timeout = 900000;
server.keepAliveTimeout = 900000;
server.headersTimeout = 900000; // 等待请求头的超时时间

server.listen(3000);

如果用Express框架,需额外添加中间件设置请求超时:

const express = require('express');
const app = express();

app.use((req, res, next) => {
  req.setTimeout(900000);
  res.setTimeout(900000);
  next();
});

// 其余路由/代理逻辑...

3. 配置IIS ARR代理的完整超时规则

IIS反向代理依赖ARR模块,需同时调整ARR代理设置和web.config:

  1. 打开IIS管理器,进入Application Request Routing Cache → Server Proxy Settings
  2. 将Connection timeout和Response timeout均设为900秒
  3. 在web.config中补充ARR超时变量和HTTP头配置:
<system.webServer>
  <rewrite>
    <rules>
      <rule name="NodeProxy" stopProcessing="true">
        <match url="(.*)" />
        <action type="Rewrite" url="http://localhost:3000/{R:1}" />
        <serverVariables>
          <set name="ARR_CONNECTION_TIMEOUT" value="900000" />
          <set name="ARR_EXTERNAL_CONNECTION_TIMEOUT" value="900000" />
        </serverVariables>
      </rule>
    </rules>
  </rewrite>
  <serverRuntime idleTimeout="00:15:00" />
  <httpProtocol>
    <customHeaders>
      <add name="Keep-Alive" value="timeout=900, max=100" />
    </customHeaders>
  </httpProtocol>
</system.webServer>

同时确认站点级连接超时:右键站点→高级设置→连接超时,设为900秒。

4. 优化支付回调机制(从根源避免长连接)

长连接等待15分钟本身不符合HTTP设计原则,更可靠的方案是:

  • 短轮询:客户端发送请求后,代理立即返回支付会话ID,客户端每隔30秒轮询一次会话状态,直到支付完成/超时
  • WebSocket推送:客户端与代理建立WebSocket连接,支付引擎回调后,代理主动推送结果给客户端

5. 排查中间网络设备超时

若以上配置均生效仍出现502,需检查防火墙、负载均衡器等中间设备的默认超时(通常为2分钟),将其调整为15分钟。

内容的提问来源于stack exchange,提问作者Hunter91151

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 09:34:56