我有以下代码续订Google令牌
function refreshOAuthToken(ClientId, ClientSecret, RefreshToken, CallbackUri)
{
var client;
try {
var tokenProvider = new GoogleTokenProvider({
refresh_token: RefreshToken,
client_id: ClientId,
client_secret: ClientSecret
});
console.log(' **** Token Data *****');
console.log('Refresh Token : ' + RefreshToken);
console.log('Client Id : ' + ClientId);
console.log('Client Secret : ' + ClientSecret);
tokenProvider.getToken(function (err, token) {
if (err || !token) {
if (err) {
console.log("Unable to refresh OAuth Token " + err);
}
else {
if (err) {
console.log('Token returned Error ' + err);
}
else {
console.log('Token returned was empty ');
}
}
}
else {
console.log("Successfully refreshed token ");
console.log("Token " + token.access_token);
}
});
}
catch (e) {
console.log("Big Error Refreshing Token " + e.message);
}
}
但是返回的令牌是空的,错误的对象也是如此 - 所以我没有得到有效的(刷新的)令牌,也没有收到错误以找出错误。
我使用了我必须检索数据的令牌,所以我很确定它们是有效的。
这是使用refresh-token节点包,而GoogleTokenProvider是由以下行初始化的。
var GoogleTokenProvider = require('refresh-token').GoogleTokenProvider;
请参阅https://www.npmjs.org/package/refresh-token
有人知道为什么令牌为空?
提前致谢