jquery ajax调用async:true vs async:false

时间:2015-10-01 08:17:03

标签: jquery ajax asynchronous get synchronous

在我的chrome扩展中,我使用了jquery库,这是我发布的ajax请求,但我很困惑是同步请求还是异步?

XCofiguration

如果它是同步的,那就足以添加

  $.ajax({
            type: 'POST',
            url: "https://api.xxx",
            data: { domain: b },
            cache: false,
            success: function (data)
            {
                var response = JSON.parse(data);
                .......
                if () 
                {

                }
                else
                {

                }
            },
            error: function (data)
            {
                $('.popup').html("test");
            }
        });
        return $ret;
    }

使其异步?

注意:我有另一个GET请求。事情是POST请求工作得很好,但在获取请求期间响应非常慢,有时我不得不进行多次点击或重新加载以使其工作。

2 个答案:

答案 0 :(得分:1)

根据documentation

  

异步(默认值:true
  默认情况下,所有请求都是异步发送的(默认设置为true)。如果需要同步请求,请将此选项设置为false。跨域请求和dataType:“jsonp”请求不支持同步操作。请注意,同步请求可能会暂时锁定浏览器,并在请求处于活动状态时禁用任何操作

因此,您无需进行任何操作即可使其异步。此外,无论如何使这些类型的调用同步通常是一个坏主意。

答案 1 :(得分:0)

Jquery Ajax调用本身是异步的。请参阅:http://api.jquery.com/jquery.ajax/