You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
706 B
25 lines
706 B
'use strict'; |
|
|
|
var createError = require('./createError'); |
|
|
|
/** |
|
* Resolve or reject a Promise based on response status. |
|
* |
|
* @param {Function} resolve A function that resolves the promise. |
|
* @param {Function} reject A function that rejects the promise. |
|
* @param {object} response The response. |
|
*/ |
|
module.exports = function settle(resolve, reject, response) { |
|
var validateStatus = response.config.validateStatus; |
|
if (!response.status || !validateStatus || validateStatus(response.status)) { |
|
resolve(response); |
|
} else { |
|
reject(createError( |
|
'Request failed with status code ' + response.status, |
|
response.config, |
|
null, |
|
response.request, |
|
response |
|
)); |
|
} |
|
};
|
|
|