草庐IT

Sec-WebSocket-Protocol

全部标签

java - 在 Java 中分离协议(protocol)解析器和处理程序

我正在使用一个简单的二进制协议(protocol)。每个数据包由10个字节组成。第一个字节指定数据包类型。使用了很多(~50)种数据包类型。我想为此协议(protocol)编写一个独立于数据包处理的通用解析器。所以解析器应该检测数据包类型并将数据放入适当的数据包类的实例中,该类包含协议(protocol)数据。例如,考虑以下类:当解析器检测到数据包类型1-->newType1()并读取原始字节并设置温度和湿度。对于数据包类型2和所有其他数据包类型也是如此。classPacket{byte[]raw;}classType1extendsPacket{inttemperature;inth

java - 编写客户端在 spring boot 中连接到 websocket

我正在尝试使用springboot制作基于websocketed的服务器/客户端应用程序。服务器接受套接字连接,然后当它收到来自客户端的文本消息时,它会处理它,然后返回一些数据。服务器有一个websocket处理程序,可以正确处理请求。publicclassDataWebSocketHandlerextendsTextWebSocketHandler{privatestaticLoggerlogger=LoggerFactory.getLogger(DataWebSocketHandler.class);privatefinalDataServicedataService;@Autow

java.net.MalformedURLException : unknown protocol: classpath

我正在尝试在Spring使用模式定位类路径从本地驱动器导入xsd模式。我在类路径中添加了所需的文件,并使用添加了该文件的引用15:10:19.336[localhost-startStop-1]DEBUGo.s.b.f.xml.ResourceEntityResolver-CouldnotresolveXMLentity[classpath:spring-social-facebook-1.1.xsd]againstsystemrootURLjava.net.MalformedURLException:unknownprotocol:classpathatjava.net.URL.(U

java - Java 中可靠的 UDP 协议(protocol)实现——为什么会这样?

我目前正在使用ReliableUDP协议(protocol)的Java实现,发现here.该项目完全没有教程,所以我发现很难发现问题。我已经设置了客户端和服务器。服务器在localhost:1234上运行,客户端在localhost:1235上运行。服务器首先建立,并循环监听连接-try{ReliableSocketclientSocket=server.socket.accept();InetSocketAddressclientAddress=(InetSocketAddress)clientSocket.getRemoteSocketAddress();Logger.getLog

java - 使用 Java 的 BitTorrent 协议(protocol) - 成功握手后的位字段

成功发送和接收来自多个点的握手后,BitTorrent消息链的下一步是位域消息。bitfield消息如下所示,其中顶行解释了协议(protocol)段的字节大小:我遇到的问题是,几乎所有对等方似乎都在发送与上述表示不同的位域消息!消息往往看起来像这样:size:332,[0,0,0,112,5,127,-1,-1,-1,-1,-5,-1,-1,-1,-1,-1,-17...]第一个问题是我收到的大多数消息都有长度字节:[0,0,0,112]即使在这种情况下接收到的消息总共包含332个字节,而在其他一些情况下,消息可能只有80个字节左右。第二个问题是这些位通常重复-1或其他一些奇怪的负值

java - WebSocket 握手错误 : Unexpected response code: 302

将基于REACT的WebSocket客户端连接到基于JavaJetty的WebSocket服务器时,出现以下错误-WebSocketconnectionto'ws://localhost:2319/ws'failed:ErrorduringWebSockethandshake:Unexpectedresponsecode:302通过Chrome的智能网络套接字客户端连接时不存在此错误。我正在尝试开发基于REACT的WebSocket客户端。客户端代码是-varconnection=newWebSocket('ws://localhost:2319/ws');connection.ono

java - 在 java Protocol Buffer 中导入 "google/protobuf/descriptor.proto"

我有一个.proto文件定义需要导入"google/protobuf/descriptor.proto"因为我使用CustomOptions.所以在我的.proto文件中我做了:import"google/protobuf/descriptor.proto";package...;...因为我的文件没有编译提示依赖关系,我得到了descriptor.proto文件的副本,将它放在我的原型(prototype)文件所在的同一目录中。这解决了问题,但我认为这不是正确的方法。现在descriptor.proto与我的.proto文件一起编译,导致在运行时有2个已编译的descriptor.p

java - 用 Java 实现的 Bittorrent Peer Wire 协议(protocol)

我有几个关于BittorrentPeerWire协议(protocol)的问题。我正在尝试使用thisspec在Java中实现它.在PeerWireProtocol部分,它表示所有整数都是四字节大端值。AFAIKjava使用大端。这是否意味着说我是否要发送阻塞消息窒息:我是否只写入sokcet1后跟0?关于我的第二个问题。当请求一件作品时,我是否认为多个文件是一个大的连续文件?还是考虑单个文件?因为片段长度不会与文件对齐​​,所以一个索引可以同时包含一个文件的结尾和另一个文件的开头?至于我的最后一个问题,当我打开与对等方的连接并发送我的握手时,我是继续请求片段还是请求然后等待一段时间,

java - Protocol Buffer : How to define Date type?

我正在尝试编写一个原型(prototype)文件,该文件的日期字段未定义为ProtocolBuffer中的类型。我已经阅读了以下帖子,但我无法找到适合我的合适解决方案:Whatthebestwaystousedecimalsanddatetimeswithprotocolbuffers?.我正在尝试将proto文件转换为java。 最佳答案 我在链接帖子中的回答主要与protobuf-net相关;但是,由于您是从Java来的,所以我建议:保持简单。对于日期,我建议只使用时间(可能是毫秒)作为纪元(传统的是1970年1月1日)。有时,

java - 使用 Spring 4 WebSocket 从 Java 推送消息

我想将消息从Java推送到WebSocket客户端。我已经成功地让一个js客户端发送到服务器并在2个js客户端上收到一条消息,所以客户端代码工作正常。我的问题是我想在Java应用程序中发生事件时启动发送。因此,例如,每次下10个订单时,都会向所有订阅的客户发送一条消息。这可能吗?我当前的配置:@ControllerpublicclassMessageController{@MessageMapping("/hello")@SendTo("/topic/greetings")publicGreetinggreeting()throwsException{returnnewGreeting