免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2352 | 回复: 3
打印 上一主题 下一主题

HTTP 字节丢失 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-31 15:30 |只看该作者 |倒序浏览
我用HTTP GET获取文件块时,最后几个字节总是下载不下来,不知道是最后几个字节丢失了还是服务器未响应发送最后几个字节。
文件分块下载的过程如下,大侠帮找找错,谢谢。
输入主机域名或IP:dl_dir.qq.com输入相对Url:/qqfile/ims/qqdoctorsetup2.1beta1.exe
现在开始抓取您制定的网页
getFile() cout
File len:2385920
GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=0-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 2385920
Content-Range: bytes 0-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:1940908
File Block Response Headers len:281
File Block raw len:1940627

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=1940627-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 445293
Content-Range: bytes 1940627-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:366119
File Block Response Headers len:286
File Block raw len:365833

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2306460-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 79460
Content-Range: bytes 2306460-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:65353
File Block Response Headers len:285
File Block raw len:65068

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2371528-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 14392
Content-Range: bytes 2371528-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:10941
File Block Response Headers len:285
File Block raw len:10656

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2382184-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 3736
Content-Range: bytes 2382184-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:3195
File Block Response Headers len:284
File Block raw len:2911

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2385095-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 825
Content-Range: bytes 2385095-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:951
File Block Response Headers len:283
File Block raw len:668

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2385763-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 157
Content-Range: bytes 2385763-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:340
File Block Response Headers len:283
File Block raw len:57

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2385820-2385919


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 100
Content-Range: bytes 2385820-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:379
File Block Response Headers len:283
File Block raw len:96

GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2385916-2385919  此处下载的最后几个字节总是丢失??!!!


data send finished
File Response Headers
HTTP/1.1 206 Partial Content
Content-Length: 4
Content-Range: bytes 2385916-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


File Block total len:281
File Block Response Headers len:281
File Block raw len:0

最后接受数据
HTTP/1.1 206 Partial Content
Content-Length: 4
Content-Range: bytes 2385916-2385919/2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream


Receive data total number: 2386197
Page::saveToFile() cout:
e:\www\dl_dir_qq_com\qqfile\ims\qqdoctorsetup2.1beta1.exe
Page raw data length:2385916
网页抓取结束
Substract ResponseHeaders success!
Page::saveResponseHeadersToFile cout:
e:\www\dl_dir_qq_com\qqfile\ims\qqdoctorsetup2.1beta1.exe.hdr
Response Headers:
HTTP/1.1 200 OK
Content-Length: 2385920
Server: qqdlsrv(1.84 for linux)
Connection: close
Content-Disposition: attachment; filename=qqdoctorsetup2.1beta1.exe
Accept-Ranges: bytes
Content-Type: application/octet-stream

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:53:172015亚冠之水原三星
日期:2015-06-02 16:34:202015年亚冠纪念徽章
日期:2015-10-19 18:13:37程序设计版块每日发帖之星
日期:2015-11-08 06:20:00
2 [报告]
发表于 2009-03-31 16:03 |只看该作者
拥已有工具(Thunder FlashGet Wget)下载测试一下,看看有没有错误.
QQ自己写的Web服务器

用你的程序去下载Apache上的东西,看看是不是你程序的问题

论坛徽章:
0
3 [报告]
发表于 2009-03-31 16:22 |只看该作者
呵呵,是我自己写的下载程序有问题,用IE6 可以正确下载dl_dir.qq.com/qqfile/ims/qqdoctorsetup2.1beta1.exe,但我的程序最后几个字节就是下载不下来,怪怪!!

论坛徽章:
0
4 [报告]
发表于 2009-03-31 16:24 |只看该作者
如果我只下载Range:bytes=2385916-2385919这最后几个字节,可是返回的内容除了Headers以外没有任何内容,不信可以用下面的GET试试。
GET /qqfile/ims/qqdoctorsetup2.1beta1.exe HTTP/1.1
Host:dl_dir.qq.com
Connection:keep-alive
Accept:*/*
User-Agent:Mozilla/4.0
Range:bytes=2385916-2385919  此处下载的最后几个字节总是丢失??!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP