This commit is contained in:
2025-03-14 01:41:53 +08:00
parent efef48a1b0
commit d947043a16
12 changed files with 284 additions and 65 deletions

View File

@@ -1,24 +1,25 @@
import { User } from '@/models/user.ts';
import http from 'http';
import cookie from 'cookie';
export const error = (msg: string, code = 500) => {
return JSON.stringify({ code, message: msg });
};
export const checkAuth = async (req: http.IncomingMessage, res: http.ServerResponse) => {
let token = '';
const authroization = req.headers?.['authorization'] as string;
let token = (req.headers?.['authorization'] as string) || '';
const url = new URL(req.url || '', 'http://localhost');
const resNoPermission = () => {
res.statusCode = 401;
res.end(error('Invalid authorization'));
return { tokenUser: null, token: null };
};
if (authroization) {
// return resNoPermission();
token = authroization.split(' ')[1];
} else if (url.searchParams.get('token')) {
if (!token) {
token = url.searchParams.get('token') || '';
} else {
}
if (!token) {
const parsedCookies = cookie.parse(req.headers.cookie || '');
token = parsedCookies.token || '';
}
if (!token) {
return resNoPermission();
}
let tokenUser;