【问题标题】:Access GAE channel API on remote server访问远程服务器上的 GAE 通道 API
【发布时间】:2016-07-14 23:03:08
【问题描述】:

有没有办法与不是当前 HTML 来源的 GAE 服务器建立通道(Channel API)?

在真正开始使用它之前,我想我可以通过在包含的脚本标签中使用绝对 URL 来连接到远程 Channel API 服务器:

<script type="text/javascript" src="http://localhost:8080/_ah/channel/jsapi"></script>

但这不起作用。尝试打开频道时,我只返回了本地 index.html(顺便说一句,本地 Web 服务器是端口 8090 上的 webpack-dev-server)。

Channel API 没有提及在创建频道时指定 URL。

我故意不想让我的 html/js 应用程序由 appengine 托管,因为我准备用 Cordova/Phonegap 打包。这意味着远程 GAE 服务器必须能够充当我的移动应用程序的纯 API 服务器。

【问题讨论】:

  • 频道 API 有相当多的魔力,你不会有这样的选择。也许考虑在链接到您的应用程序的 VM 上使用本机 websocket。
  • 是的,保罗 - 似乎是这样。这实际上是我 GAE 计划的一个钉子。
  • 我有一个应用程序使用计算 VM 作为套接字服务器,原因与此类似,与 GAE 应用程序通信。所以它可以解决,然后你也有更多的选择。

标签: google-app-engine channel-api


【解决方案1】:

事实证明,这并不打算像我想要的那样工作。用于初始化 Channel API 的 javascript必须从您要连接的服务器下载。

我决定不使用 Channel API,而是使用 HTML5 的 EventSource——但这对于 GAE 上的应用程序是不可能的,因为对允许连接保持打开多长时间的限制。所以我现在已经将整个应用程序移出 GAE 并将其托管在 Spring Boot 应用程序中。这对我来说是一个不错的选择,我什至没有后悔过。但对于其他人来说,离开 GAE 可能并不那么容易。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多