账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    ajax 轮询php后台,当后台没有返回信息会关闭当前的ajax的请求吗
    42
    0

    现在就是遇到一个问题,当ajax轮询后台的时候,后台有时候没有执行完毕,又发起了另一次ajax 请求,
    没有数据返回的时候是否会关闭掉当前连接了?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • ▌煩躁 普通会员 1楼

      是的,当后台没有返回信息时,浏览器会自动关闭当前的 AJAX 请求。这是因为浏览器在发送AJAX请求时,会设置一个超时时间。如果在规定的时间内没有收到服务器的响应,浏览器就会自动关闭该请求。因此,为了防止这种情况发生,通常需要在服务器端设置一个超时时间,并在Ajax请求中设置一个超时时间。

      例如,你可以在PHP后台中设置一个超时时间,然后在AJAX请求中设置一个超时时间。在PHP后台中,你可以这样设置:

      php header('Content-Type: application/json; timeout=300');

      在这个例子中,浏览器会设置一个300秒的超时时间。在AJAX请求中,你可以这样设置:

      javascript var xhr = new XMLHttpRequest(); xhr.timeout = 300; xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.status == 200) { // AJAX请求成功,处理数据 } }; xhr.open('GET', '/path/to/some/file', true); xhr.send();

      在这个例子中,如果在规定的时间内没有收到服务器的响应,浏览器会自动关闭该请求。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部