fix: 修复普通用户无法正常读取用户信息的问题
This commit is contained in:
@@ -210,15 +210,22 @@ export class AuthManager {
|
||||
await client.testAdminAuth();
|
||||
return true;
|
||||
} catch (error) {
|
||||
// 如果是401错误,说明token有效但不是管理员,不需要清除token
|
||||
// 如果是其他错误,可能token无效,清除token
|
||||
// 只有在token完全无效的情况下才清除token
|
||||
// 401错误表示token有效但权限不足,不应清除token
|
||||
if (
|
||||
error &&
|
||||
typeof error === "object" &&
|
||||
"status" in error &&
|
||||
error.status !== 401
|
||||
"status" in error
|
||||
) {
|
||||
// 如果是403 (Forbidden) 或401 (Unauthorized),说明token有效但权限不足
|
||||
if (error.status === 401 || error.status === 403) {
|
||||
return false;
|
||||
}
|
||||
// 其他状态码可能表示token无效,清除token
|
||||
AuthManager.clearToken();
|
||||
} else {
|
||||
// 网络错误等,不清除token
|
||||
console.error('管理员权限验证失败:', error);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user