如何确保socket.io服务器接收到socket.io-client消息?

有没有办法确保socket.io服务器接收到socket.io-client消息? 我在这里看到socket.io中有一个确认机制。 如果没有收到确认(这里是否有任何标准模式),或者如果在规定的时间内没有收到确认,socket.io-client会重试发送消息,我们可以再次重试发送消息吗?

我的应用程序通过2g蜂窝networking使用socket.io-client。 消息到达服务器的时间有98%没有任何问题。 另外2%的信息由于蜂窝networking的问题而丢失。

它会声称有一个套接字连接,数据将被传输,但服务器端永远不会得到它。 我想知道是否有一个确定的消防方式,以确保客户端消息已经到服务器。 我的每个客户都已经有一个ID,但不能假设消息到达那里。

有没有人有一个如何重新发送相同的消息,如果没有在一定的时间范围内确认的例子。 我甚至不在乎是否再次发送同样的消息,这是不可取的,但对我来说并不重要。

最灵活的方法是build立你自己的确认机制。 如果你使用超时,你可能需要防止重复的消息,因为据说丢失的消息最终可能会到达。

作为替代,简单的AJAX可以确保消息传递,并且比websocket更可靠。 但是,你可能需要重build你现有的系统,自己判断是否值得。