GAE 与客户端进行双向通信(Java / iOS 客户端的通道 API 替代方案,或者可能是 XMPP)?

发布于 2024-12-29 17:30:05 字数 1436 浏览 1 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

扛刀软妹 2025-01-05 17:30:05

我能想到两个选项:

  • 您可以在 Java 应用程序中嵌入 HTML 页面,并为其匿名端点使用 Channel API。然后当您收到消息时向您的应用程序发出信号。这不会受到 Channel API 实现中变幻莫测的变化的影响。
  • 如果您想使用 XMPP API,您需要某种 XMPP 帐户,这是正确的。您可以考虑在 AWS 或其他地方运行一个非常简单的 XMPP 服务器并将您的客户端连接到该服务器;然后您可以从 App Engine 应用程序向您自己的服务器上的地址发送消息。 ejabberd 似乎是首选服务。

Two options I can think of:

  • You could embed an HTML page in your Java app and use the Channel API for its anonymous endpoints. Then signal out to your app when you get a message. This won't be subject to vagaries of changes in the Channel API's implementation.
  • You're correct that you need an XMPP account of some sort if you want to use the XMPP API. You could consider running a very simple XMPP server on AWS or elsewhere and connecting your clients to that; then you can send messages from your App Engine app to addresses on your own server. ejabberd seems to be the service of choice.
沉鱼一梦 2025-01-05 17:30:05

XMPP 似乎是您的最佳选择,但您需要配置服务器以允许匿名客户端绕过您的注册问题。

我不确定你所说的双方发起沟通是什么意思。 XMPP 将要求客户端通过连接到服务器来启动,但之后它可以自动接收消息。当然,如果服务器的目的是向客户端发送自动消息,那么在没有某种客户端身份(这意味着某种形式的注册)的情况下,您如何知道哪个客户端?

XMPP seems like your best bet, but you need to configure your server to allow anonymous clients to get around your registration issue.

I am not sure what you mean by either side initiating communication though. XMPP will require the client to initiate by connecting to the server, but after that it can receive messages unprompted. Of course, if the intent is for the server to send unprompted messages to a client, how do you know what client without some sort of client identity (which means some form of registration)?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文