请教大家一个问题,http能否知道客户端是否已经接收response完毕
客户端发起一个http请求,服务器收到后回一个字符串给客户端。
如果这个字符串很大,而服务器想要知道客户端是否完整地接收了这个字符串。
对于这种需求,应该怎样弄呢?
------解决方案--------------------需要另外一边做判断,然后给你返回数据
------解决方案--------------------客户端同样回复个响应给服务端 , 客户端对这个数据包进行完整性验证;
例如你回复的数据包长度是x 那么客户端在接收这个数据包的时候 进行长度 或 其他数据规范的验证,验证通过则告知服务端;现在的通信都是这样干的 ;
------解决方案--------------------额,楼主不清楚http协议吗?
------解决方案--------------------一定会接收完的,详细说下你的需求~
------解决方案--------------------肯定是可以的。要看楼主怎么玩儿了。。以前在tomcat里面有个access的log,里面会记录发送了多少字节,以及时间
------解决方案--------------------这种情况只能用webSocket了,就是目前支持的浏览器不多
这种socket协议支持双向通讯,当你客户端接受完毕后可以向服务器回发完全接收的消息
------解决方案--------------------
思路可以,不过你要保证发送token的Http请求一定是在数据全部接受完以后才发送。
客户端可能不只需要一个token,TCP协议中至少有一个头信息是包含传输文件的长度。你可以模拟这个协议,将内容和内容长度同时发送到客户端,客户端根据这两个来判断是否接受完全,然后发送成功接受的http请求
------解决方案--------------------客户端同样回复个响应给服务端 , 客户端对这个数据包进行完整性验证;
例如你回复的数据包长度是x 那么客户端在接收这个数据包的时候 进行长度 或 其他数据规范的验证,验证通过则告知服务端;现在的通信都是这样干的 ;
+1