android 浏览器下载文件, 弹出下载框,没有点击 ok 其实是没有下东西的? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hijoker
V2EX    Android

android 浏览器下载文件, 弹出下载框,没有点击 ok 其实是没有下东西的?

  •  
  •   hijoker 2020-08-03 17:15:54 +08:00 12372 次点击
    这是一个创建于 1902 天前的主题,其中的信息可能已经有所发展或是发生改变。
    这点好像和 pc 上的浏览器不一样.
    起因是: https://github.com/claudiodangelis/qrcp 这个项目, 默认不加-k 选项,下载完成后服务端就断开了,用 android 手机上自带的浏览器发现总是下失败
    和 PC 上的浏览器的差异在于, PC 上半天不点击 Ok 的话,其实浏览器已经给你下下来了(可以通过 response 看到),这个时候服务端即使断开,你再点击保存是成功的.
    android 上的浏览器,我的理解没有点击"确定"按钮也应该下载了的,因为服务端是把数据传输完毕才关闭的,但是都是显示下载失败...
    不知道为啥
    10 条回复    2020-08-04 02:06:35 +08:00
    ASmartPig
        1
    ASmartPig  
       2020-08-03 17:23:30 +08:00
    标准的安卓浏览器应该是调用下载这个程序把请求给他进行下载的,小米浏览器不管你多久点下载,你点了之后他才会跳到下载管理 APP 里开始走进度条。
    imn1
        2
    imn1  
       2020-08-03 17:30:11 +08:00
    这个应该要看浏览器的处理方式
    如果 PC(或 desktop)的浏览器,把预下载禁用,也是不下载的,虽然不懂移动开发,但我觉得 android 也一样,可能会多一层考虑就是流量付费问题
    crella
        3
    crella  
       2020-08-03 17:45:20 +08:00 via Android
    你 android 上浏览器是指 chrome 、chrome 内核还是 uc 、qq 浏览器还是厂商改造的 uc 、qq 浏览器?

    我的安卓全功能版 Opera,弹出下载对话框之后就开始后台下载了,用 Opera 内置下载功能。所以有时候会出现给文件改名,点确定后就显示:下载完成
    g2m2s
        4
    g2m2s  
       2020-08-03 17:52:04 +08:00
    有些 android 浏览器是跳转到下载页面,然后重新请求 接收文件流。
    hijoker
        5
    hijoker  
    OP
       2020-08-03 17:57:10 +08:00
    @crella 都是厂商自己改的,国产 android 你懂的
    hijoker
        6
    hijoker  
    OP
       2020-08-03 18:03:50 +08:00
    我把这个项目加了个-k 选项,发现在 android 手机上, 确实是发了两次请求的
    在点了"确定"后, 又发了次同样的请求才真正的下载
    hijoker
        7
    hijoker  
    OP
       2020-08-03 18:06:52 +08:00
    @hijoker 好像 android 上的 Firefox 又不大一样....
    zhiyzellda
        8
    zhiyzellda  
       2020-08-03 20:43:56 +08:00 via Android
    严格来说如果某个文件只允许被下载一次,这个功能在用户尚未确认的时候提前下载了文件,那就会导致用户误以为文件没有被下载,自然会第二次点击下载按钮,然后发现再也不能下载这个文件了。唯一的一次机会被提前下载搞泡汤了。
    我知道这是小得不能再小的需求,但如果真的有人这样设计,那就被浏览器坑了。你这个则是反过来被浏览器坑了一把。
    两种逻辑都没有错,总之专用需求就用专用逻辑,其他逻辑是为其他需求设计的。
    hijoker
        9
    hijoker  
    OP
       2020-08-04 01:43:59 +08:00
    https://stackoverflow.com/questions/15226359/android-browser-issue-download-makes-two-requests-instead-one
    android 这个设计给跪了,好歹第一次是个 head 请求啊,结果 2 次都是 get 请求
    hijoker
        10
    hijoker  
    OP
       2020-08-04 02:06:35 +08:00
    最新版的 android 的 chrome 浏览器是和 pc 上的浏览器表现一致的,一次 get 请求, 没点击"确认"前已经下载
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2716 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 14:02 PVG 22:02 LAX 07:02 JFK 10:02
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86