@江振宇 你好,想跟你请教个问题:
使用SuperSocket做服务端,使用自定义FixedHeaderReceiveFilter固定头部格式传输二进制数据,前四个字节是数据包长度,后面紧跟着数据包,使用SuperSocket.ClientEngine.AsyncTcpSession做客户端,当客户端一次发送的数据量小的时候服务端能正常接收数据,当客户端一次发送的数量有几千字节的时候,服务端接收就会报错:客户端会话关闭OnSessionClosed(关闭原因:ProtocolError),我想是不是客户端发送一次数据包过大拆包导致的问题,这个问题该怎么解决?
我能说我也遇到这个问题了,搜索到了你,然后去qq群里面问,结果刚问就自己灵光一闪,想起了以前见过ServerConfig里的MaxRequestLength,我直接加上并赋值10000,结果就好了.....
maxRequestLength
receiveBufferSize
sendBufferSize
这三个参数都加大,socket客户端ReceiveBufferSize也要
我也碰到这个问题了.还真是MaxRequestLenth 的问题.(我接收的数据是比较大的json包)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。