如何让客户端知道服务器接收多少数据?获取as3吗?

一步清风 2019-08-13 06:14:48
现在我客户端可以连接上服务器,而且在服务器那边可以不断接收客户端发送的数据,现在如果客户端不返回结果,我是否能知道客户端接收多少数据?用socket能否向抓包工具一样拿到ack中的len?
...全文
148 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
一步清风 2019-08-14
  • 打赏
  • 举报
回复
我现在客户端用flash做的,我查一下api好像没有封装这个,现在flash也没有源码。服务端用的java
maradona1984 2019-08-14
  • 打赏
  • 举报
回复
引用 5 楼 一步清风 的回复:
[quote=引用 4 楼 maradona1984 的回复:] [quote=引用 2 楼 一步清风 的回复:] [quote=引用 1 楼 northwesternwind 的回复:] 这个应该在发送的数据中包括数据长度,没有必要再跑到底层去抓什么ack. 简单地说应该服务端和客户端约定同样的数据格式和传输顺序。复杂点双方应该建立通信协议,比如http, ftp等这些协议,就是解决双方通信的问题。你也可以根据你的业务,设计比较简单的回话方式。
我感觉是我没描述清楚。现在就是说,我客户端发送数据包给服务端,服务端不回复发送结果,这边客户端能否知道成功发送多少数据包?[/quote] tcp协议已经做了这事了,你发送的数据包,他都要ack的,没有ack的就会重发[/quote] 那么怎么获取这个ack中的信息?[/quote] java的socket应该是封装了这层逻辑的,对外不暴露的(也有可能调用操作系统api),我不太清楚是否能做到你说的这一点 我觉得你可以在此之上,把你的需要传输的数据分块,做到类似功能的
一步清风 2019-08-14
  • 打赏
  • 举报
回复
引用 4 楼 maradona1984 的回复:
[quote=引用 2 楼 一步清风 的回复:] [quote=引用 1 楼 northwesternwind 的回复:] 这个应该在发送的数据中包括数据长度,没有必要再跑到底层去抓什么ack. 简单地说应该服务端和客户端约定同样的数据格式和传输顺序。复杂点双方应该建立通信协议,比如http, ftp等这些协议,就是解决双方通信的问题。你也可以根据你的业务,设计比较简单的回话方式。
我感觉是我没描述清楚。现在就是说,我客户端发送数据包给服务端,服务端不回复发送结果,这边客户端能否知道成功发送多少数据包?[/quote] tcp协议已经做了这事了,你发送的数据包,他都要ack的,没有ack的就会重发[/quote] 那么怎么获取这个ack中的信息?
maradona1984 2019-08-14
  • 打赏
  • 举报
回复
引用 2 楼 一步清风 的回复:
[quote=引用 1 楼 northwesternwind 的回复:] 这个应该在发送的数据中包括数据长度,没有必要再跑到底层去抓什么ack. 简单地说应该服务端和客户端约定同样的数据格式和传输顺序。复杂点双方应该建立通信协议,比如http, ftp等这些协议,就是解决双方通信的问题。你也可以根据你的业务,设计比较简单的回话方式。
我感觉是我没描述清楚。现在就是说,我客户端发送数据包给服务端,服务端不回复发送结果,这边客户端能否知道成功发送多少数据包?[/quote] tcp协议已经做了这事了,你发送的数据包,他都要ack的,没有ack的就会重发
northwesternwind 2019-08-14
  • 打赏
  • 举报
回复
你给一个哑巴喂饺子,要知道哑巴吃了多少饺子,有两个办法:一是哑巴要说话,你想知道的时候就问哑巴。另外一个就是你自己数,喂了多少就认为哑巴吃了多少。当然哑巴有可能没接着掉地上的,这个计数就不太准确。
一步清风 2019-08-14
  • 打赏
  • 举报
回复
引用 1 楼 northwesternwind 的回复:
这个应该在发送的数据中包括数据长度,没有必要再跑到底层去抓什么ack. 简单地说应该服务端和客户端约定同样的数据格式和传输顺序。复杂点双方应该建立通信协议,比如http, ftp等这些协议,就是解决双方通信的问题。你也可以根据你的业务,设计比较简单的回话方式。
我感觉是我没描述清楚。现在就是说,我客户端发送数据包给服务端,服务端不回复发送结果,这边客户端能否知道成功发送多少数据包?
瘦死的黑骆驼 2019-08-14
  • 打赏
  • 举报
回复
我们开发的程序是属于应用层的,应用层需要人为的自定义协议去控制业务流程,ack中的数据应该是网络层的,如果不暴露api是拿不到的,c#里倒是有拦截网络层数据的api,也是通过第三方包,可能原理上和抓包工具类似吧
northwesternwind 2019-08-13
  • 打赏
  • 举报
回复
这个应该在发送的数据中包括数据长度,没有必要再跑到底层去抓什么ack.
简单地说应该服务端和客户端约定同样的数据格式和传输顺序。复杂点双方应该建立通信协议,比如http, ftp等这些协议,就是解决双方通信的问题。你也可以根据你的业务,设计比较简单的回话方式。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧