在GAE上运行Websocket

Mar*_*amo 6 javascript google-app-engine websocket node.js google-cloud-platform

我正在尝试使用websocket调整我的应用程序以在GAE上运行,但是阅读文档,我找不到解决此问题的漂亮解决方案.

使用一个非常简单的应用程序:https://github.com/marcosbergamo/gae-nodejs-websocket

这是我尝试使用的示例演示.但是当我尝试连接到我的websocket时,我收到此错误;

关注有关请求的图片;

在此输入图像描述

Mar*_*amo 2

经过大量时间的学习和测试,谷歌的一位朋友向我展示了这个问题的解决方案!谢谢蒂亚戈·阿凡西尼!

嗯,解决方案是:

第一步是使用托管虚拟机。(存储库使用它。)但目标是将管理从 Google 切换到 User。执行此操作后,下一步是为您的应用程序创建静态 IP。就我而言,我使用端口 3000 来为我的 Websocket 提供服务,请随意更改。在我的 app.yaml 上,我也启用此端口,如下所示:

network:
  forwarded_ports: ["3000"]
Run Code Online (Sandbox Code Playgroud)

请记住在“网络>>默认>>防火墙”中启用代理上的此端口。

如果您通过 gcloud 部署应用程序,则需要在应用程序上再次启用用户管理和静态 IP。

我将将此存储库发送到 GoogleCloudPlatform,作为在 AppEngine 上使用 Websockets 的示例。