I have following code:
CaseFolderResource
.exportByCaseId()
.getWithGenericResponse(
{caseId : request.caseId},
function (result) {
console.log(result);
console.log('in 4')
},
ErrorHandler.handleError
)
.$promise
.then(
function (success) {
console.log(success);
console.log('in 2');
console.log('success');
CaseFolderResource
.getByCaseId()
.getWithGenericResponse(
{caseId : request.caseId},
function (result) {
console.log('nested call');
console.log(result);
}
);
},
ErrorHandler.handleError
);
In the console log
i see in
then in 2
and then success
even the output was a failure so promise logs:
data
with success:false
.
I get HTTP 500 on first and second promise.
Edit:
getWithGenericResponse
is:
getWithGenericResponse: {
method: 'GET',
interceptor: genericResponseInterceptor,
headers: {
'Authorization': function () {
return AuthHolder.getAuthData();
},
'X-Company': function(){
return getCompany();
}
}
},
genericResponseInterceptor
is:
var genericResponseInterceptor = {
response: function (data) {
var response = data.data;
console.log(response);
if (data.status === 401 || data.status === 403) {
reject();
} else if (!response.success && response.errors !== undefined && response.errors !== null) {
response.errors.forEach(function (error) {
console.log(error.code);
if (error.message) {
ToasterService.showTranslatedWarningToasterInstant(error.message);
} else {
ToasterService.showTranslatedWarningToaster('error.' + error.code, {params: error.args});
}
});
}
return response;
},
responseError: function (data) {
if (data.status === 401) {
reject();
} else if (data.status === 403) {
ToasterService.showTranslatedErrorToaster('error.message.403');
} else {
ToasterService.showTranslatedErrorToaster('error.message.default');
}
return data;
}
};
Even if i delete: ,ErrorHandler.handleError
from the first request - the result is the same as described above.
Edit:
I can resolve it with if (response.data.success)
:
CaseFolderResource.exportByCaseId().getWithGenericResponse({caseId : request.caseId}).$promise
.then(function (response) {
console.log(response.data);
console.log(response.success);
if (response.data.success) {
console.log('in 2');
console.log('success');
CaseFolderResource.getByCaseId().getWithGenericResponse({caseId : request.caseId}, function (result) {
console.log('nested call');
console.log(result);
});
}
});