请教一个 web 网页端展示网络延迟的方案 - V2EX
请不要在回答技术问题时复制粘贴 AI 生成的内容
simplove

请教一个 web 网页端展示网络延迟的方案

  •  
  •   simplove Aug 25, 2021 2418 views
    This topic created in 1732 days ago, the information mentioned may be changed or developed.
    前端是 web 考试页面,经常由于当前网络不行导致考试出问题,想做一个在前端可以展示类似王者荣耀或者英联联盟那样的 ping 值,这个东西可以很直观的看到当前网络到服务器的情况。
    目前考试端只支持 WEB,没有做客户端。
    不知道有没有人知道有这些的组件或者是方案?
    10 replies    2021-08-27 15:49:14 +08:00
    DrakeXiang
        1
    DrakeXiang  
       Aug 25, 2021
    定时请求接口不就行了?
    kop1989
        2
    kop1989  
       Aug 25, 2021
    不太理解这个“ping 值”对于 web 考试这个业务有什么现实指导意义。

    页面加载出来就是加载出来了。
    加载不出来就是加载不出来。
    脚本、样式加载不完全就是不完全。
    你一个 ping 值能怎样呢?

    你告诉人家你 ping 值是 0,也不意味着他下次请求的 js 、css 、html 文件一定能成功加载。
    kop1989
        3
    kop1989  
       Aug 25, 2021
    所以还是要从页面加载错误的提示友好程度,以及如何给予用户有建设性的操作意见为出发点。
    tabris17
        4
    tabris17  
       Aug 25, 2021
    个人觉得这玩意儿就是甩锅用的 feature
    硬要做的话也很简单,js 定时发起一个 ajax 请求,然后等待服务器端返回数据,把 time cost 打印出来就行了
    simplove
        5
    simplove  
    OP
       Aug 25, 2021
    @kop1989 类似这种: 网络情况 绿色按钮表示网络很好,红色铵钮表示网络很差
    John60676
        6
    John60676  
       Aug 25, 2021
    同意 @kop1989 的观点,你告诉用户网络不行,但是你的解决方案呢?还不如加个错误重连
    simplove
        7
    simplove  
    OP
       Aug 25, 2021
    @John60676 网络不行得找他们自己的 IT 呀,我们只是不想用户总是甩锅给我们就行。
    laozhoubuluo
        8
    laozhoubuluo  
       Aug 25, 2021   3
    @simplove 如 4# 所说拿到 time cost 完了转换成值就完了。比如 300ms 以下就是绿灯,1000ms 以下黄灯,3000ms 以下红灯,5000ms 或者没拿到请求直接黑灯下面显示当前网络异常顺便冻结掉提交按钮。
    另外应用侧也需要解决方案,例如定期在后端以及 localstorage 暂存用户答案以便后续提交之类的,纯粹的网络状态告知不能完全解决问题。
    eason1874
        9
    eason1874  
       Aug 25, 2021
    做个轮询接口,发送请求之前记录时间 t1,收到响应之后记录 t2,t2 减去 t1 就是时间差。

    条件允许上 websocket,服务器每 30 秒推送一次,本地收到响应就计算与上次的时间差。
    xinJang
        10
    xinJang  
       Aug 27, 2021
    同意 2 楼观点。
    拿王者举例,可是王者资源是在本地的,你一个 web 该请求的都没请求到,就看个网络情况有多大的意义,没想明白
    About     Help     Advertise     Blog     API     FAQ     Solana     2944 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 80ms UTC 08:02 PVG 16:02 LAX 01:02 JFK 04: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