使用 Elemental 的 GWT Websockets

Posted

技术标签:

【中文标题】使用 Elemental 的 GWT Websockets【英文标题】:GWT Websockets with Elemental 【发布时间】:2013-04-19 12:39:52 【问题描述】:

我想在 GWT Web 应用程序中使用 websockets 技术。

我知道有一些使用 Commet 和 Atmospere 的实现,但我想避免它们,因为它们实际上是对服务器的长期 HTTP 请求。

我有自己的 Web 套接字实现,我想知道是否有人知道客户端库或我可以实现在客户端/服务器与 Web 套接字之间进行通信的方式。更具体地说,我听说 GWT Elemental 包提供了这种功能。我对此进行了研究(谷歌搜索),但找不到任何具体内容。

有人能指出我正确的方向吗?除了 GWT Elemental 之外的任何建议也都受到欢迎。

编辑: 我找到了下面的链接,它是 GWT-Elemental 接口。我可以看到它是 ReleaseCandidate 版本,但我愿意尝试使用该功能。因此,如果有人在我想知道他/她的 cmets/建议之前使用过它。

http://grepcode.com/file/repo1.maven.org/maven2/com.google.gwt/gwt-elemental/2.5.1-rc1/elemental/html/WebSocket.java?av=f

【问题讨论】:

***.com/questions/9218548/… 嗨@Baadshah,我读了这篇文章,但这对我没有太大帮助,因为我看起来与 Commet 或 Atmosphere 不同。特别是,我想知道使用 GWT Elemental 包解决我的问题的可能性,如上所述。 【参考方案1】:

好吧,我没有使用来自ElementalWebsockets,但是FileReader API 并且工作正常。 但是您必须考虑到Elemental 是高度实验性的。 由于Elemental 库是自动生成的,因此 Webkit 的 IDL 中的一些规范已更改,因此无法正常工作。 因此,您可能需要找到解决方法等。

使用Elemental 非常简单。 您通常使用包中的BrowserWindow 来获取要使用的类的实例。 像这样的:

Window window = Browser.getWindow();
WebSocket webSocket =  window.newWebSocket(URL);
webSocket.setOnmessage(new EventListener() ....);
websocket.send();

【讨论】:

以上是关于使用 Elemental 的 GWT Websockets的主要内容,如果未能解决你的问题,请参考以下文章

检查GWT Elemental2叠加层中方法或属性的可用性

GWT FileUpload OnClick

Janus-Gateway RTP-Forward 将流发送到 AWS Elemental MediaLive

如何使用 GWT-RPC 以外的方式访问 GWT servlet?

GWT/RPC - gwt 是不是支持使用 <?> 的泛型

GWT 错误:“类在 Gin 中使用,但在 GWT 客户端代码中不可用”