【发布时间】:2015-11-16 20:56:18
【问题描述】:
在我的应用程序中,我使用套接字连接与服务器通信。一切正常,我可以毫无问题地从/向服务器发送/接收。没有,只有一个。服务器有一个特定的选项/响应,而不是让连接保持打开大约 30 秒。服务器立即发送回复,但它保持连接打开,因此应用程序挂在那里显示“等待”消息,因为我似乎无法弄清楚如何在不等待服务器的情况下关闭连接/inputStream关闭它。
有没有办法读取缓冲区接收到的每个字符,一旦找到一个字符(例如'*'),缓冲区就应该关闭,并且与服务器的连接也应该关闭。
有什么帮助吗?
【问题讨论】:
-
你可以使用http方式来做到这一点。 http 的功能之一是在发送实际数据之前发送流的长度。因此,您的应用程序可以知道将传输多少字节。但是,我不明白你为什么不逐个比较每个接收到的字节
-
Adem,我不能使用 http(相信我,如果可以的话,我会的),因为我不负责“服务器”端,所以,我必须使用我所拥有的给定:| .比较每个字节是什么意思?
-
我没有说使用http,我建议像http一样处理它。你可以看看http chunked (en.wikipedia.org/wiki/Chunked_transfer_encoding)。查看我比较每个字节的答案