The Asynchronous Request non-blocking the client DOM/browser until your operations is completed and only initiates the operations. It is a backgrounds process.
It is not hold and waits process and it is an asynchronous call and the asynchronous calls do not wait for a response to close the socket.
The Asynchronous call are using when requests are not depend to each other request’s responses.
The callback server must be available or the response will be failed.
The operations (send, receive, and reply) will be synchronous or asynchronous.
By default, the $.ajax request in jQuery is set to asynchronous and we can set (async: false) for synchronous operations otherwise (async: true).
For Synchronous request click...
//AJAX Synchronous and Asynchronous Requests. //#REGION NAMESPACE var demo = demo || {}; //#ENDREGION demo.ajax = demo.ajax || (function () { var getBaseURL = function () { var currentBaseURL = location.protocol + "//" + location.hostname + (location.port && ":" + location.port) + "/"; return currentBaseURL; }; var baseURL = getBaseURL(); var request_token; var ajaxAsyncCall = function (requestURL, typeGP, inputs, request_token) { $.ajax({ url: requestURL, type: typeGP, contentType: "application/json; charset=utf-8", data: inputs, beforeSend: function (xhr) { xhr.setRequestHeader("Request_Token", request_token) }, async: true, cache: false, success: function (data) { if (data !== undefined && data !== null) { if (data.Code == "OK") { alert("Success"); return false; } else if (data.Code == "ERROR") { alert('Error - ' + data.Message); return false; } } } }); }; var ajaxSyncCall = function (requestURL, typeGP, inputs, request_token) { $.ajax({ url: requestURL, type: true, contentType: "application/json; charset=utf-8", data: inputs, beforeSend: function (xhr) { xhr.setRequestHeader("Request_Token", request_token) }, async: false, cache: false, success: function (data) { if (data !== undefined && data !== null) { if (data.Code == "OK") { alert("Success"); return false; } else if (data.Code == "ERROR") { alert('Error - ' + data.Message); return false; } } } }); }; return { baseURL:baseURL, ajaxAsyncCall: ajaxAsyncCall, ajaxSyncCall: ajaxSyncCall } })();
//Use of common Synchronous and Asynchronous methods. //GET CUSTOMERS LIST WITH ASYNC CALL. demo.ajax.ajaxAsyncCall(demo.ajax.baseURL + "API/Users/GetUsersRequest", 'GET', null, function (data) { if (data != undefined) { successGetCustomers(data); } }, null); var successGetCustomers = function (data) { if (data) { console.log(data); //TODO: As PER YOU! } };