You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.1 KiB
31 lines
1.1 KiB
import { Req } from "#/global"
|
|
|
|
export async function validateJwt(decoded, request: Req, h) {
|
|
if (decoded.id) {
|
|
const User = request.getModel("User")
|
|
const result = await User.findOne({ where: { id: decoded.id } })
|
|
if (result == null) {
|
|
return { isValid: false }
|
|
}
|
|
return { isValid: true }
|
|
} else {
|
|
return { isValid: false }
|
|
}
|
|
}
|
|
|
|
export async function validateSession(request: Req, session) {
|
|
const User = request.getModel("User")
|
|
loggerSite.debug(`请求路径:${request.path}, 请求方法:${request.method}`)
|
|
if (session.id) {
|
|
const result = await User.findOne({ where: { id: session.id } })
|
|
if (result == null) {
|
|
loggerSite.debug(`${"cooike中存储的用户不存在"}`)
|
|
return { valid: false }
|
|
}
|
|
loggerSite.debug(`${"当前登录ID:" + session.id}`)
|
|
return { valid: true, credentials: result }
|
|
} else {
|
|
loggerSite.debug(`${"用户未登录兵器cooike中不存在信息"}`)
|
|
return { valid: false }
|
|
}
|
|
}
|
|
|