ssl 我是否需要在TCP之上手动握手和关闭事件?

uwopmtnx  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(86)

我正在实现一个剪贴板同步应用程序,我已经为服务器发现请求/响应、剪贴板同步数据包做了数据包定义。但现在我对握手和断开连接感到困惑。可能我的应用程序有像WIFI连接和断开连接选项的UI。设备可以是服务器或客户端,但不能同时是两者。如果客户端要连接到服务器,它会启动TLS(在TCP之上)连接,以便服务器知道有一个新的客户端,并请求用户许可将此设备添加为客户端。那么,“断开”又是怎么回事呢?如果我断开客户端的套接字连接(通过按下断开连接按钮),它在服务器中是否可检测到?或者,我是否需要为握手和断开连接定义一个数据包?什么是好的方法?

kmbjn2e3

kmbjn2e31#

我是个初学者,请小心我的回答,因为它可能是错的。我不知道TLS,但我知道一点套接字。当套接字关闭时,通常在另一端收到一个零字节。所以如果你有类似

amountBytes = socket.receiveAsync(byteArray)

字符串
您可以:

If(amountBytes == 0){ yourDisconnectLogic }


至少这是我在C#中处理套接字的方式。

相关问题