gpt4 book ai didi

java - Jetty - WebSocket.sendMessage(String data) 和 void sendMessage(byte frame,String data) 有什么区别?

转载 作者:行者123 更新时间:2023-11-30 05:10:04 25 4
gpt4 key购买 nike

我正在使用 websockets 和 Jetty 7.1.6.v20100715。

我有几个问题,主要是因为缺乏有关这些方法的信息/解释。

1st)sendMessage(字节帧,字符串数据)中的字节是什么。

第二)如果从 WebSocket.onConnect() 方法调用,是否有任何原因导致 outbound.sendMessage(string) 不起作用?

另外,关于 Jetty 实现以及如何使用它有什么好的解释吗?

http://download.eclipse.org/jetty/stable-7/apidocs/org/eclipse/jetty/websocket/WebSocket.html

谢谢

最佳答案

“几乎不存在”的 Jetty 文档...我认为尽早使用 WebSocket 的最佳方法是阅读 specification请注意,此时您只能通过 WebSocket 连接发送 Unicode 字符串。

回答您的问题:

  1. 该字节是您要发送的“帧类型”。目前,仅定义了 Unicode 字符串的帧类型,因此您可以仅使用 sendMessage(String) 方法。在我看来,除了提到的方法之外, send* 方法不应该公开,以避免混淆,但对于 Jetty API 中的许多方法来说都是如此,而且它们似乎并不关心。它似乎已经准备好发送二进制数据,但据我所知,没有浏览器支持除 Unicode 消息之外的任何内容,因此在实践中它毫无用处。

  2. 据我所知,这样做应该没问题,但是 Jetty 方面缺乏文档,这使得这是一项有风险的业务。这就是为什么我选择将第一条消息从客户端发送到服务器以使协议(protocol)运行,效果很好。

(请注意,我的 WebSockt 知识大约有 6 个月的历史,而且这个主题发展得非常快)

关于java - Jetty - WebSocket.sendMessage(String data) 和 void sendMessage(byte frame,String data) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3733055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com