Simon
Simon

Reputation: 1476

Async calls using AngularJS

We are making multiple HTTP requests using Angular:

$scope.GetTest1 = function () {
    $http.get("/test/GetTest1/").success(function (response) {
        $scope.res = response.aaData;
    });
} 

$scope.GetTest2 = function () {
    $http.get("/test/GetTest2/").success(function (response) { 
        $scope.res = response.aaData; 
    });
}

$scope.GetTest3 = function () {
    $http.get("/test/GetTest3/").success(function (response) { 
        $scope.res = response.aaData; 
    });
}

// This is called from an onclick of a button
$scope.LoadAll = function () {
    $scope.GetTest1();
    $scope.GetTest2();
    $scope.GetTest3();
}

We assumed that these were all called async, however, we have log4net enabled and we log the datetime when the 'gets' are received, and the times for all 3 are:

19:05:26

19:05:27

19:05:28

This was an unexpected surprise as we assumed the time would all be within 1 second. ie async.

Not sure if we're missing something,

Sorry, question is, how do we make these async calls?

Upvotes: 0

Views: 61

Answers (1)

kuzzmi
kuzzmi

Reputation: 189

I suppose that the reason of that perhaps is on the server side. I had almost the same result when server could serve only one request from one client. If response from server fulfils your $http requests in one second then that could be a problem. Please check your network statistics and if you see that they were called simultaneously but were served not immediately then it's server side problem.

You can easily track this on browser's devtools' timeline

Upvotes: 1

Related Questions