【问题标题】:Google Chrome - stalled when using ajax, how to fix it?谷歌浏览器 - 使用 ajax 时停止,如何解决?
【发布时间】:2015-07-18 15:20:39
【问题描述】:

在我的家/办公室里,它工作得很好。

但是昨天我去把它设置到他们有专用互联网的客户位置。但是在那里的网络中,我所有的数据包都丢失了延迟,并且整个事情都无法正常工作,因为它在我的家庭/办公室网络中工作到云端。

我经常使用 Google Chrome > 网络 > 时间 > 连接设置 = 停滞 14.89 秒和 URL 的红线

请问我该如何解决?我花了几个小时与那里的网络人员在一起,但他们认为是我的代码造成的?我现在很困惑。

var maincrawl_timer = null;

function crawl() {
    maincrawl_timer = setTimeout(function() {
        var s1 = $.get(submit_url + '/inbox', {
            action: 'spinbox',
            ousername: main_username,
            status: 'offline'
        }, function(msg) {
            for (drawSixRowOnly in msg.db) {}
        }, 'json');

        s1.always(function() {
            console.log('>>> crawl started. Are you sure its not causing Stalled??????????????????');
            crawl();
        });

    }, 3000);
}

// Boot once
crawl();

// Button used - to receive request
function ackowledge(input1, input2) {
    var chk = input2 + '_' + input1;
    if (search_row(chk) == chk) {
        error_show('Accepted by someone else.');
        return false;
    }

    $('#form1_show').show();
    $('#form1_title').html(input2);
    $.post(submit_url + '/spack', {
        action: 'spack',
        ousername: main_username,
        id: input1,
        kiosk: input2
    }, function(msg) {
        if (msg.result == 'ok') {
            spformid = msg.spformid; // selected: ACknowledge id 
            $('#form1_body').html(msg.form);
        } else {
            $('#form1_body').html('Failed');
        }
    }, 'json');
}

【问题讨论】:

  • 可以直接在浏览器地址栏访问那个被卡住的网址吗?
  • @KevinB:先生,服务器正在接受请求,没有任何限制。
  • @DiegoZoracKy:是的,从地址栏我可以打开它
  • 你这里是网络问题。它可以是您客户的网络/计算机,也可以是您的网络/服务器。从那时起诊断问题。由于您客户的网络人员已经排除了他们自己是问题的原因,因此它一定是您的问题。 (或者他们错了)
  • 您可以尝试将浏览器使用的 dns 服务器更改为 google 的服务器。 (一定要改回来!)developers.google.com/speed/public-dns/docs/using

标签: javascript jquery ajax google-chrome


【解决方案1】:

我在您的代码中没有看到任何会导致 HTTP 流量停滞的内容。当您尝试访问服务器时,Chrome 开发工具中的 HTTP 请求/响应标头是什么样的?您是否收到 403 错误?尝试从您的客户端通过 SSH 连接到服务器,或者让网络工程师使用您的客户端 URL 在服务器上进行 curl。如果这一切似乎表明服务器将接受来自客户端的数据包,那么您可能将数据包发送到了错误的端口,或者您的身份验证不正确。如果您没有正确进行身份验证,请了解服务器的安全要求。您可能必须实施 Oauth/cookies/Access-Control-Allow-Origin 标头才能正确进行身份验证。

【讨论】:

    猜你喜欢
    • 2011-02-04
    • 2016-04-13
    • 1970-01-01
    • 2016-02-11
    • 1970-01-01
    • 2019-04-24
    • 2012-05-24
    • 2016-01-12
    • 1970-01-01
    相关资源
    最近更新 更多