diff --git a/lib/api_common.js b/lib/api_common.js index b176a3d..d17ec43 100644 --- a/lib/api_common.js +++ b/lib/api_common.js @@ -161,7 +161,7 @@ API.prototype.preRequest = function (method, args, retryed) { var that = this; var callback = args[args.length - 1]; // 调用用户传入的获取token的异步方法,获得token之后使用(并缓存它)。 - that.getToken(function (err, token) { + that.getToken(function TokenReady(err, token) { if (err) { return callback(err); } @@ -172,8 +172,9 @@ API.prototype.preRequest = function (method, args, retryed) { if (!retryed) { var retryHandle = function (err, data, res) { // 42001 重试 - if (data && data.errcode && data.errcode === 42001) { - return that.preRequest(method, args, true); + if (data && data.errcode && (data.errcode === 42001 || data.errcode === 40014)) { + retryed = true; + return TokenReady(null, null); } callback(err, data, res); };