mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-07-19 12:03:37 +00:00
buid: 1.3.0-beta3
This commit is contained in:
@@ -8,31 +8,44 @@ import { WebUiConfig } from "../helper/config";
|
|||||||
const router = Router();
|
const router = Router();
|
||||||
export async function AuthApi(req: Request, res: Response, next: NextFunction) {
|
export async function AuthApi(req: Request, res: Response, next: NextFunction) {
|
||||||
//判断当前url是否为/login 如果是跳过鉴权
|
//判断当前url是否为/login 如果是跳过鉴权
|
||||||
try {
|
if (req.url == '/auth/login') {
|
||||||
if (req.url == '/auth/login') {
|
next();
|
||||||
next();
|
return;
|
||||||
return;
|
}
|
||||||
}
|
if (req.headers?.authorization) {
|
||||||
if (req.headers.authorization) {
|
let authorization = req.headers.authorization.split(' ');
|
||||||
let token = req.headers.authorization.split(' ')[1];
|
if (authorization.length < 2) {
|
||||||
let Credential = JSON.parse(Buffer.from(token, 'base64').toString('utf-8'));
|
|
||||||
let config = await WebUiConfig.GetWebUIConfig();
|
|
||||||
let credentialJson = await AuthHelper.validateCredentialWithinOneHour(config.token, Credential);
|
|
||||||
if (credentialJson) {
|
|
||||||
//通过验证
|
|
||||||
next();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
res.json({
|
res.json({
|
||||||
code: -1,
|
code: -1,
|
||||||
msg: 'Unauthorized',
|
msg: 'Unauthorized',
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} catch (e: any) {
|
let token = authorization[1];
|
||||||
console.log(e);
|
let Credential: any;
|
||||||
|
try {
|
||||||
|
Credential = JSON.parse(Buffer.from(token, 'base64').toString('utf-8'));
|
||||||
|
} catch (e) {
|
||||||
|
res.json({
|
||||||
|
code: -1,
|
||||||
|
msg: 'Unauthorized',
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
let config = await WebUiConfig.GetWebUIConfig();
|
||||||
|
let credentialJson = await AuthHelper.validateCredentialWithinOneHour(config.token, Credential);
|
||||||
|
if (credentialJson) {
|
||||||
|
//通过验证
|
||||||
|
next();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
res.json({
|
||||||
|
code: -1,
|
||||||
|
msg: 'Unauthorized',
|
||||||
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
res.json({
|
res.json({
|
||||||
code: -1,
|
code: -1,
|
||||||
msg: 'Server Error',
|
msg: 'Server Error',
|
||||||
|
Reference in New Issue
Block a user