V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
phpuser
V2EX  ›  问与答

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

  •  
  •   phpuser · 2018-09-21 23:11:37 +08:00 · 2139 次点击
    这是一个创建于 2014 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我们有个 VUE 实现的页面,有多个 Tab, 每个 Tab 会使用 axios 请求后端 json api,如果响应稍慢(高并发时), 在响应回来之前用户会不停止的点击不同的 Tab,导致不断的请求 api. 然后恶性循环... ..

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

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

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

    之前有个 loading 动画, 但未覆盖. 现在已经加上覆盖,就是想知道一下有没有其它什么解决方式..
    watzds
        4
    watzds  
       2018-09-21 23:16:36 +08:00 via Android
    用户是机器人?不停点击…,加个加载动画得了
    kslr
        5
    kslr  
       2018-09-21 23:23:41 +08:00
    @phpuser #3 axios queue 等等
    解决方式就是经典优化方案,从 UI 到前端后端巴拉巴拉一大堆
    agdhole
        6
    agdhole  
       2018-09-21 23:38:42 +08:00 via Android
    载入动画 + sessionStorage + 后端限制请求频率
    molvqingtai
        7
    molvqingtai  
       2018-09-21 23:41:04 +08:00
    套个防抖函数?
    colincat
        8
    colincat  
       2018-09-21 23:48:26 +08:00 via iPhone
    Keep-live ???
    f0rger
        9
    f0rger  
       2018-09-22 17:40:13 +08:00 via iPhone
    核心问题是后台慢,优先解决后台问题。前端点击后等待时出个 loading 层遮住不让点就好。
    这只是治标,别人抓个包 replay 一下你后台还得跪
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3358 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:21 · PVG 19:21 · LAX 04:21 · JFK 07:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.