| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 685 人关注过本帖
标题:asp 如何计算客户端下载了多大的视频
只看楼主 加入收藏
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
结帖率:76.71%
收藏
已结贴  问题点数:20 回复次数:7 
asp 如何计算客户端下载了多大的视频
asp 如何计算客户端下载了多大的视频
搜索更多相关主题的帖子: 客户端 计算 如何 
2012-07-15 16:18
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
收藏
得分:0 
怎么没人懂啊。

ASP讨论QQ群:251346273
2012-07-15 17:04
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
收藏
得分:0 
当客户打开视频页面,视频文件也会被下载,那么asp怎么计算出该视频文件被客户端下载进度,当下载一半时,跳到其他页面。

ASP讨论QQ群:251346273
2012-07-15 17:07
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
收藏
得分:0 
ADODB.Stream
2012-07-15 22:03
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
收藏
得分:0 
用ADODB.Stream 可以防止盗链等,但是有缺点需要经过复杂的负载处理,要不然就会假死

定义每次请求下载的字节,这样每次请求累计得到下载的字节,判断下载字节
2012-07-15 22:06
netlin
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:24
帖 子:544
专家分:4308
注 册:2012-4-9
收藏
得分:0 
使用ASP做这件来,有些免为其难!

做自己喜欢的事!
2012-07-15 23:01
ysf0181
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:55
帖 子:914
专家分:2385
注 册:2006-10-4
收藏
得分:0 
有没有代码呢

ASP讨论QQ群:251346273
2012-07-16 18:46
coretear
Rank: 4
等 级:业余侠客
威 望:1
帖 子:102
专家分:244
注 册:2012-6-5
收藏
得分:20 
有,这个我为我的框架底层写的,你参考一下  ChunkSize = 2*1024*1024 这里就是第一每次请求最快下载速度,我限制是2M 你可以能的更小,就是你带宽不管有多大都可以用asp来控制下载的速度,下面的循环判断 就可以判读下载大小了
转载说明出处啊 ,呵呵
程序代码:

    '函数格式 Download(StrFile,NewName)
    '功能描述 下载一个已经存的的文件,处理中文不能下载的问题
    '应用代码 By HT.Liu
    Public FunctIon Download(StrFile,NewName)
        Dim  StrFIlename,ALLOW_FILE_EXT,FileExt,Fso,IntFIlelength,Upload,S,TotalSize,offset,f,ChunkSize,strChunk
        StrFIlename = Server.MapPath(strFile)
        ALLOW_FILE_EXT = ",ASP,ASA,ASPX,ASAX,MDB,PHP,JSP,SHTML,HTML,HTM,TV,DATA,Config,INI,VBS,JS,"
        FileExt=MId(StrFIlename,InStrRev(StrFIleName, ".")+1) 
        Response.Buffer=True 
        Response.Clear
    
        If InStr("," & ALLOW_FILE_EXT & ",", "," & FileExt & ",") > 0 Then
            Download = "不允许下载此文件格式." 
            Exit Function
        End If
        
        Set Fso=Server.CreateObject("ScrIptIng.FIleSystemObJect") 
        If Not Fso.FIleExists(StrFIleName) Then
            Download = "下载的文件不存在."
            Exit Function
        End If
    
        Set F=Fso.GetFIle(StrFIlename)
        IntFIlelength=F.SIze
        
        If Err Then
            Download = "该文件数据不完整或许已损坏." 
            Exit Function
        End If
        
        Set S=Server.CreateObject("ADODB.Stream")
        S.Type = 1
        S.Open
        'Response.write StrFIlename
        'Response.end
        
        s.LoadFromFIle(StrFIlename)
        TotalSize = S.Size
        Response.ContentType = "application/x-download; charset=UTF-8"
        'Response.ContentType = "application/x-download"
        Response.AddHeader "Content-DIsposItIon","attachment; filename="&NewName
        Response.AddHeader "Content-Length",IntFilelength
        offset = 0
        '定义每次请求的下载流字节
        ChunkSize = 2*1024*1024
        While offset < TotalSize
            If (TotalSize - offset < ChunkSize) Then
                ChunkSize = TotalSize - offset
            End If
            strChunk = S.Read(ChunkSize)
            'Response.write strChunk
            Response.BinaryWrite strChunk
            Response.Flush
            offset = offset + ChunkSize
        Wend
        S.Close
        Set S = NothIng
        Set Fso = Nothing
        Call Log_Write("下载文件:"&StrFIlename&"=>"&NewName)
    End FunctIon 




[ 本帖最后由 coretear 于 2012-7-17 19:57 编辑 ]
收到的鲜花
  • ysf01812012-07-18 15:57 送鲜花  29朵   附言:我很赞同,加我QQ:461840539,有问题一起讨 ...
2012-07-17 19:56
快速回复:asp 如何计算客户端下载了多大的视频
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017659 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved