如果我发送一些数据,然后立即关闭套接字,另一端会收到数据吗?

  • 本文关键字:数据 套接字 然后 如果 sockets
  • 更新时间 :
  • 英文 :


For .NET frameworksystem.net.socket.socket如果我发送一些数据,然后立即关闭套接字,另一端会收到数据吗?

如果没有,是否有一种方法可以让我在另一端接收到数据后才关闭套接字?

WebSocketoverHTTP的工作原理是建立一个TCP/IP连接,这要求客户端在有效载荷中向服务器发送一个upgrade头,如果服务器能够建立一个WebSocket连接,它将以HTTP 101 Switching Protocols响应进行响应。一旦连接成功建立,您就可以来回发送数据了。

有趣的是,请求关闭连接还需要您发送一个帧,这意味着您也在向服务器发送数据。不仅如此,要正确关闭连接,服务器还需要响应相同的关闭帧,一旦发生这种情况,TCP连接终止,您不能再发送数据。

在你的例子中,这意味着服务器将在发送关闭请求帧之前接收你发送的数据。

你可以在协议RFC https://tools.ietf.org/html/rfc6455中阅读更多关于帧,http头等的详细信息

最新更新