我具有在Amplify中刷新认知会话令牌的功能
export async function refreshToken() {
try {
const init = await Auth.currentSession();
const cognitoUser = await Auth.currentUserPoolUser();
await new Promise((resolve, reject) => {
cognitoUser.refreshSession(init.refreshToken, (err, session) => {
if (err) {
reject(err);
}
resolve(session);
});
});
} catch (e) {
throw new Error('FAILED_TO_REFRESH_TOKEN');
}
}
但是eslint抱怨Expected to return a value at the end of async function 'refreshToken' consistent-return
答案 0 :(得分:-1)
您的refreshToken
函数在成功后不会返回任何内容。
使用您的当前ESLint配置,这似乎是必需的。
例如,您可以在等待Promise之前添加一个returǹ
:
export async function refreshToken() {
try {
const init = await Auth.currentSession();
const cognitoUser = await Auth.currentUserPoolUser();
return await new Promise((resolve, reject) => {
cognitoUser.refreshSession(init.refreshToken, (err, session) => {
if (err) {
reject(err);
}
resolve(session);
});
});
} catch (e) {
throw new Error('FAILED_TO_REFRESH_TOKEN');
}
}