sasa6077 2016-03-01 02:45 采纳率: 0%
浏览 1803

http 服务器 流文件读取问题

对http这块不了解,请教下各位大神。
情况是这样的:
1,我用C#的一个media player控件播放http服务器的mp3,给控件设置MP3的url路径后,控件会发送一个http请求给服务器,服务器将整首mp3文件下发给控件;这个正常运行;
2,这个下发的过程,一个6M的MP3,控件用了50s才下载完成;是在同一台电脑,http服务器是用IIS。出现50s下载完成的情况,我估计是这个控件接收慢,并不是网络慢,我自己写测试代码读取服务器上的mp3文件,1s都不用就好了。我自己写了服务器测试,我将整个mp3文件用socket的send方法一次写入。情况还是一样,我的测试客户端,瞬间收到整个mp3数据,但是MP3控件还是用了50s;
3,这个50s的时间,我是确定的。我用了抓包软件查看了;所以,我基本确定,是控件本身的设定,导致50s才下载接收完成;这点我想问下,如何设置一个socket的接收速度??
4,还有一个疑问:这个MP3控件,可以在播放的过程中,拖动进度条,播放后面的数据。如果50s才下载完整首mp3,那么在10s内,拖动到本该20s才能加载的数据,那么这个mp3控件会再次发送网络请求,请求20s后的数据,这点也没问题。我就想问,我在第一次收到mp3控件的请求时,已经将整首mp3文件都写入socket了,但是控件接收了10s后,又再次发送请求了,那么这个socket的后面数据,MP3控件一般是怎么处理的(我估计是丢弃后面的数据)?而我这个socket又需要怎么处理?因为我接收到新的请求是请求20s后的数据,我需要重新创建一个socket去发送20s后的数据了。

  • 写回答

1条回答 默认 最新

  • threenewbee 2016-03-06 21:44
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘