mirror of
https://gh-proxy.org/https://github.com/klinsmaya/SQLBot.git
synced 2026-11-09 01:36:57 +08:00
perf: Check user status
This commit is contained in:
@@ -62,7 +62,13 @@ class TokenMiddleware(BaseHTTPMiddleware):
|
||||
try:
|
||||
with Session(engine) as session:
|
||||
session_user = await get_user_info(session = session, user_id = token_data.id)
|
||||
if not session_user:
|
||||
raise Exception(f"User not found with id: {token_data.id}")
|
||||
session_user = UserInfoDTO.model_validate(session_user)
|
||||
if session_user.status != 1:
|
||||
raise Exception(f"User is not active!")
|
||||
if not session_user.oid or session_user.oid == 0:
|
||||
raise Exception(f"User default space is not set!")
|
||||
""" if token_data.oid != session_user.oid:
|
||||
raise HTTPException(
|
||||
status_code=401,
|
||||
|
||||
@@ -168,9 +168,21 @@ class HttpService {
|
||||
errorMessage = 'Invalid request parameters'
|
||||
break
|
||||
case 401:
|
||||
errorMessage = 'Unauthorized, please login again'
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-ignore
|
||||
errorMessage = error.response?.data?.data?.msg || 'Unauthorized, please login again'
|
||||
// Redirect to login page if needed
|
||||
break
|
||||
ElMessage({
|
||||
message: errorMessage,
|
||||
type: 'error',
|
||||
showClose: true,
|
||||
})
|
||||
setTimeout(() => {
|
||||
wsCache.delete('user.token')
|
||||
window.location.reload()
|
||||
}, 1000)
|
||||
return
|
||||
// break
|
||||
case 403:
|
||||
errorMessage = 'Access denied'
|
||||
break
|
||||
|
||||
Reference in New Issue
Block a user