【发布时间】:2021-07-15 20:11:32
【问题描述】:
我正在使用 websockets 编写一个 Web 应用程序,但发现一些奇怪的东西:在 PC 下,我可以发送大尺寸的 blob,但在 Android 下,不会发送任何大于 1410 字节的消息(更糟糕的是:连接已关闭),在 Chrome 和 Firefox 中。我试图将数据切成块,大小为 1400 字节,然后手动发送。它有效,但不是最理想的。
我必须做什么才能在 Android 下发送至少 64Kbytes 的消息?
谢谢。
【问题讨论】:
-
在 WebSocket 协议中,最大帧大小为 2^63 字节,一条消息可以包含多个帧,因此一条消息实际上是无限的。所以问题一定出在Android的实现协议上。许多实现确实对帧/消息大小施加了限制,默认情况下通常范围为 8K-64K。听起来Android对此更加严格。不过,我不知道 Android 是否/如何允许增加限制。
标签: javascript websocket