我使用NSStream通过MCSession发送数据,这可以很好地工作99%,但是有时候我会在接收器上结束垃圾
我写
First 4 bytes is the hash
Next 4 bytes is the content length
Rest the data
如果是垃圾,我会得到像内容长度太大,哈希不正确的疯狂值......
如何防范此类输入?现在我可以检查哈希是否匹配,但是如果内容长度为#34;则会出现问题。变得比缓冲区大
注意:NSStreamEventErrorOccurred不会被触发
答案 0 :(得分:0)
我添加了常见的4字节保证(如数字42)并检查接收端...
现在这可能会失败0.000000001%,但仍未找到更好的替代
但是其他人可以很好地回答我们的问题