#6264 - FIX - Log renewToken when not success #2619
|
@ -16,44 +16,44 @@ module.exports = Self => {
|
|||
accessScopes: ['DEFAULT', 'read:multimedia']});
|
||||
|
||||
Self.renewToken = async function(ctx) {
|
||||
let accessToken;
|
||||
let token;
|
||||
let createTokenOptions = {};
|
||||
let token; let isNotExceeded;
|
||||
try {
|
||||
token = ctx.req.accessToken;
|
||||
|
||||
const {courtesyTime} = await models.AccessTokenConfig.findOne({
|
||||
fields: ['courtesyTime']
|
||||
});
|
||||
const isNotExceeded = await Self.validateToken(ctx);
|
||||
isNotExceeded = await Self.validateToken(ctx);
|
||||
if (isNotExceeded)
|
||||
return token;
|
||||
|
||||
// Schedule to remove current token
|
||||
setTimeout(async() => {
|
||||
let exists;
|
||||
try {
|
||||
const exists = await models.AccessToken.findById(token.id);
|
||||
exists = await models.AccessToken.findById(token.id);
|
||||
exists && await Self.logout(token.id);
|
||||
} catch (error) {
|
||||
// eslint-disable-next-line no-console
|
||||
console.error(error);
|
||||
const body = JSON.stringify({err: error, token});
|
||||
const body = {error: error.message, now: Date.now(), userId: token?.userId ?? null, exists};
|
||||
await handleError(body);
|
||||
throw new Error(error);
|
||||
}
|
||||
}, courtesyTime * 1000);
|
||||
|
||||
// Get scopes
|
||||
|
||||
let createTokenOptions = {};
|
||||
const {scopes} = token;
|
||||
if (scopes)
|
||||
createTokenOptions = {scopes: [scopes[0]]};
|
||||
// Create new accessToken
|
||||
const user = await Self.findById(token.userId);
|
||||
accessToken = await user.accessTokens.create(createTokenOptions);
|
||||
const accessToken = await user.accessTokens.create(createTokenOptions);
|
||||
|
||||
return {id: accessToken.id, ttl: accessToken.ttl};
|
||||
} catch (error) {
|
||||
const body = JSON.stringify({error: error.message, token, accessToken});
|
||||
const body = {error: error.message, now: Date.now(), userId: token?.userId ?? null, createTokenOptions, isNotExceeded};
|
||||
await handleError(body);
|
||||
throw new Error(error);
|
||||
}
|
||||
|
@ -61,5 +61,6 @@ module.exports = Self => {
|
|||
};
|
||||
|
||||
async function handleError(body, tag = 'renewToken') {
|
||||
body = JSON.stringify(body);
|
||||
await models.Application.rawSql('CALL util.debugAdd(?,?);', [tag, body]);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue