Added option to count rate limits as errors

`options.rate_limit_as_error`
This commit is contained in:
Amish Shah
2015-12-16 18:51:32 +00:00
parent 470fbbb6d6
commit b82c318e96
4 changed files with 12 additions and 3 deletions

View File

@@ -133,11 +133,11 @@ var InternalClient = (function () {
ret.end(function (error, data) {
if (error) {
error.response.error.status = 429;
if (error.response && error.response.error && error.response.error.status && error.response.error.status === 429) {
if (!_this.client.options.rate_limit_as_error && error.response && error.response.error && error.response.error.status && error.response.error.status === 429) {
if (data.headers["retry-after"] || data.headers["Retry-After"]) {
var toWait = data.headers["retry-after"] || data.headers["Retry-After"];
toWait = parseInt(toWait);
console.log("waiting for", toWait);
setTimeout(function () {
_this.apiRequest.apply(_this, _arguments).then(resolve)["catch"](reject);
}, toWait);