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

Cloud Run+IAP环境下NodeJS API的SSE缓冲问题求助

Cloud Run(IAP认证环境)下SSE事件被缓冲无法即时发送
  • NodeJS API部署在经过IAP(身份感知代理)认证的Cloud Run服务上,发送SSE(服务器发送事件)时,所有事件都会被缓冲,需达到最大缓冲长度或所有事件完成后才批量推送给客户端。
  • 本地开发环境中事件可即时发送,但线上环境里,Cloud Run日志显示API会立即执行写入操作,客户端却要等到所有事件处理完才能一次性收到。
  • 怀疑问题出在GFE(谷歌前端)或IAP的头部剥离机制上,尝试添加"X-Accel-Buffering": "no"头部后仍未解决。
  • 补充说明:已禁用Cloud Run的HTTP/2功能,因为它和IAP搭配使用时会触发无限循环;查阅官方文档,未发现Cloud Run要求必须使用HTTP/2来支持SSE的说明。

部署命令

gcloud run deploy api-XXXX 
--quiet 
--image us-east4-docker.pkg.dev/hq-xxxxx/XXXX 
--update-env-vars NODE_CONFIG_ENV=develop 
--update-labels managed-by=github-actions,commit-sha=XXX 
--platform managed 
--format json 
--region us-east4 
--project XXXX
--no-cpu-throttling

当前API返回的响应头(已尝试多种配置)

"Content-Type": "text/event-stream; charset=UTF-8",
"Cache-Control": "no-cache",
"Connection": "keep-alive",
"X-Accel-Buffering": "no",

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 22:03:18