收藏
回答

后退request不会中断请求

问题模块
API和组件

如题,当用户后退操作时,当前页面上发起的request请求不会中止

最后一次编辑于  2017-05-31  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

7 个回答

  • maq
    maq
    2017-06-01

    有道理 :)

    2017-06-01
    赞同
    回复
  • 陈军
    陈军
    2017-06-01

    我到觉得官方要做到的是丰富更多可能的接口,因为一个需求接口说不定就能满足到好多人。  的确现阶段我在做的事就是你刚说的那样去优化服务器,但是数据链接是双向的我想更多的满足当用户在网络环境差的时候,让体验不会那么糟糕。 就比如超时设置,其实或许很多时候设置的时间到了,而这个时候用户加载已经完成90%了。 但因为设了超时,中断了。 假设我这时候能做到 设个取消按钮。让用户自己选择等待还是退出就完美了

    2017-06-01
    赞同
    回复
  • maq
    maq
    2017-06-01

    “退出当前页面即中断 request 请求”这个肯定是不会有的,因为它会带来更多的问题,会干扰其它场景下的正常逻辑。


    如果官方推出一个 wx.cancelRequest 接口,你会用吗?想想都觉得这个会非常难用。


    所以,真正有效的手段还是改善服务器响应能力,不要每个请求都花那么长的时间,另外如果必要的话,缩短 request 的超时时间,比如设置成 5 秒,那么,用户想必无法做到在 5 秒之内触发第 6 次 request,呵呵


    说到底,如果用户连续遇到 5 次 request 都不能及时响应的情形,那么对他来说其实就已经是“宕机”了。

    2017-06-01
    赞同
    回复
  • 陈军
    陈军
    2017-06-01

    所以,按理说我们一般的网络页面,后退了即中断了链接了,这样就不会响应堆积在一起。用户只要不退出耐心等待。还是能成功打开页面的。可现在小程序 后退没有中断,如果用户前期不耐心超过5次响应堆积了。后续想耐心也没法了。加上小程序关闭在进入也并不会终止掉,我现在能做的只能是给个超时设置,请求超过多少秒,才给中止。

    2017-06-01
    赞同
    回复
  • maq
    maq
    2017-06-01

    如果用户分别进入 5 个页面,触发的 5 次 request 都没有及时响应而堆积在一起,那这个时候就算没有 request 的次数限制也跟“宕机”差不多了呀。

    2017-06-01
    赞同
    回复
  • 陈军
    陈军
    2017-06-01

    如果没有限制最高只能请求5次还好,可限制了只能5次,用户网络访问比较慢的时候,后退点了其他请求,进去还是很慢,他又退出,这样当请求超过5个了。后面就点击不起作用了。用户就会以为我们程序宕机没法用了

    2017-06-01
    赞同
    回复
  • maq
    maq
    2017-05-31

    很正常啊……

    2017-05-31
    赞同
    回复