1

是否可以将 Google Appengine Channel API 与 DART 语言一起使用?如果你能指出一些例子和陷阱(如果有的话),那就太好了。

4

3 回答 3

5

我推荐的解决方案是使用 JS 中的 Channel API 打开一个套接字并通过 postMessage 或自定义事件转发所有消息,并在 Dart 中接收它们。

我不确定是否有任何通用解决方案是开源的,但它应该是相当简单的,并且不需要通用的 JS-interop 来工作。

编辑:澄清

编辑2:

仅供参考:我刚刚发布了一个库来做到这一点。我希望这个对你有用!

http://code.google.com/p/gae-channel-api-dart/

于 2012-09-11T19:54:33.173 回答
3

Dart 团队的一个人将客户端库移植到 Dart:http ://code.google.com/p/gae-channel-api-dart/

于 2012-09-11T01:09:33.010 回答
3

Channel API 的 JS 代码是专有的,没有“源”(虽然有,但祝你好运,逆向工程)。Google 是故意这样做的,以便他们可以更改 Channels 底层协议,而无需进行混乱的升级/弃用过程。

因此,如果您遵循@Shannon 的建议,重写的代码可能会在将来的某个时候停止工作,您将需要重复对 Channels JS 代码进行逆向工程的过程。

更好的解决方案是从 Dart 调用 Channels API JS 代码,但目前Darts 对调用 JS 的支持还很初级,但似乎他们已经开始着手改进它

于 2012-09-11T07:02:31.700 回答