phpuser
V2EX  ›  问与答

VUE 如果避免单用户过多请求?

  •  
  •   phpuser · Sep 21, 2018 · 2675 views
    This topic created in 2861 days ago, the information mentioned may be changed or developed.
    我们有个 VUE 实现的页面,有多个 Tab, 每个 Tab 会使用 axios 请求后端 json api,如果响应稍慢(高并发时), 在响应回来之前用户会不停止的点击不同的 Tab,导致不断的请求 api. 然后恶性循环... ..

    请问一下一般是怎么处理的?我们临时加了个机制,一个响应回来前禁止用户对页面的其它元素点击事件...

    另外,请问 nginx 代理后端 PHP 或 java 时,用户停止请求,是否有选项停止后端 php/java 的这个请求?

    谢谢..
    9 replies    2018-09-22 17:40:13 +08:00
    kslr
        1
    kslr  
       Sep 21, 2018
    请求做队列
    kslr
        2
    kslr  
       Sep 21, 2018   ❤️ 1
    但我觉得这个应该业务上改进,比如做个 loading 动画覆盖
    phpuser
        3
    phpuser  
    OP
       Sep 21, 2018
    @kslr "请求做队列" 有没有稍微详细一点的信息或关键字, 指在 VUE 还是后端? 多谢.

    之前有个 loading 动画, 但未覆盖. 现在已经加上覆盖,就是想知道一下有没有其它什么解决方式..
    watzds
        4
    watzds  
       Sep 21, 2018 via Android
    用户是机器人?不停点击…,加个加载动画得了
    kslr
        5
    kslr  
       Sep 21, 2018
    @phpuser #3 axios queue 等等
    解决方式就是经典优化方案,从 UI 到前端后端巴拉巴拉一大堆
    agdhole
        6
    agdhole  
       Sep 21, 2018 via Android
    载入动画 + sessionStorage + 后端限制请求频率
    molvqingtai
        7
    molvqingtai  
       Sep 21, 2018
    套个防抖函数?
    colincat
        8
    colincat  
       Sep 21, 2018 via iPhone
    Keep-live ???
    f0rger
        9
    f0rger  
       Sep 22, 2018 via iPhone
    核心问题是后台慢,优先解决后台问题。前端点击后等待时出个 loading 层遮住不让点就好。
    这只是治标,别人抓个包 replay 一下你后台还得跪
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3710 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 00:44 · PVG 08:44 · LAX 17:44 · JFK 20:44
    ♥ Do have faith in what you're doing.