使用 GAE 灵活环境对 运行 docker 图像时服务器发送的事件被阻止
Server-sent events blocked when using GAE flexible environment to run docker images
当我尝试在本地访问服务器发送的事件端点时,它工作正常并且每两秒吐出一次数据,当我通过 ssh 进入 appengine 虚拟机时它也工作正常(使用 curl)但是当我尝试访问服务器时- 来自外部 appengine 的端点事件端点我只是超时。 GAE 是否阻止了服务器端事件?我看到 websocket 可能会很麻烦,但是服务器端事件是通过 http.
否,server-sent 事件在 Google App Engine 中未被阻止。但是由于 GAE 默认启用了缓冲,因为请求永远不会完成,所以它们永远不会到达您那里。在您的 SSE 响应中使用此 header 禁用缓冲:
X-Accel-Buffering: no
在此处阅读更多内容:How Requests are Handled
当我尝试在本地访问服务器发送的事件端点时,它工作正常并且每两秒吐出一次数据,当我通过 ssh 进入 appengine 虚拟机时它也工作正常(使用 curl)但是当我尝试访问服务器时- 来自外部 appengine 的端点事件端点我只是超时。 GAE 是否阻止了服务器端事件?我看到 websocket 可能会很麻烦,但是服务器端事件是通过 http.
否,server-sent 事件在 Google App Engine 中未被阻止。但是由于 GAE 默认启用了缓冲,因为请求永远不会完成,所以它们永远不会到达您那里。在您的 SSE 响应中使用此 header 禁用缓冲:
X-Accel-Buffering: no
在此处阅读更多内容:How Requests are Handled