From fc7acd86bf0dc5c906b530536fc2bd830e75c2ce Mon Sep 17 00:00:00 2001 From: Shin Kojima Date: Tue, 26 Jan 2016 16:46:45 +0900 Subject: [PATCH] do not create a new instance of deferred, re-use the existing one. --- forceng.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/forceng.js b/forceng.js index 435b9a1..a0931e4 100644 --- a/forceng.js +++ b/forceng.js @@ -304,12 +304,14 @@ angular.module('forceng', []) * params: queryString parameters as a map - Optional * data: JSON object to send in the request body - Optional */ - function request(obj) { + function request(obj, deferred) { var method = obj.method || 'GET', headers = {}, - url = getRequestBaseURL(), - deferred = $q.defer(); + url = getRequestBaseURL() + if (deferred === undefined){ + var deferred = $q.defer(); + } if (!oauth || (!oauth.access_token && !oauth.refresh_token)) { deferred.reject('No access token. Login and try again.'); @@ -346,7 +348,7 @@ angular.module('forceng', []) refreshToken() .success(function () { // Try again with the new token - request(obj); + request(obj, deferred); }) .error(function () { console.error(data);