官方文档没有提到支持,但我想知道是否可以连接一个客户端程序而不是 javascript 来使用 Channel API。我目前正在使用来自 Windows 应用程序的基本轮询技术,拥有 Channel API 将提高响应能力并大大减少负载。
我想作为一个丑陋的黑客,我可以在后台渲染一个隐藏的 webbrowser 对象并在其中运行 javascript,然后以此为食。有更好的解决方案吗?
官方文档没有提到支持,但我想知道是否可以连接一个客户端程序而不是 javascript 来使用 Channel API。我目前正在使用来自 Windows 应用程序的基本轮询技术,拥有 Channel API 将提高响应能力并大大减少负载。
我想作为一个丑陋的黑客,我可以在后台渲染一个隐藏的 webbrowser 对象并在其中运行 javascript,然后以此为食。有更好的解决方案吗?
使用 XMPP 将不起作用,因为 Channel API 仅在 Google 服务器之间与 XMPP 通信:XMPP 流量不会暴露给浏览器(您可以通过使用 FireBug 或 Chrome 开发者窗口查看“绑定”的内容来验证这一点" 请求;你会看到有 JSON 被发送下来)。
正如您所说,当前唯一可行的解决方案是包装一个浏览器控件,该控件运行足够的 JavaScript 以连接到您的应用程序中的通道,并在收到消息时使用它来向您的 C# 应用程序发出信号。笨重,但可行。
虽然您也可以进行逆向工程,然后模拟 iframe 正在做什么并直接使用 JSON 消息,但随着实现细节的变化,您的应用程序可能会以多种方式被破坏——而且它们会发生变化。
综上所述,我很好奇有多少人想要一个原生 C# 库,以及你想用它编写什么样的应用程序。WP7 应用程序?Windows 客户端应用程序?服务器应用程序?我在这里为 App Engine 创建了一个功能请求:
http://code.google.com/p/googleappengine/issues/detail?id=4206
如果您有兴趣,请对其进行投票,并且您可以命名的详细信息/令人信服的用例越多越好。
谢谢!