resolved problem

This commit is contained in:
Andreas 2024-03-11 03:18:44 +01:00
parent 6b42a39bae
commit 838c2df336

View File

@ -27,7 +27,8 @@ type UserCredentials = {
}
async function verifyUserCredentials(req: NextApiRequest, res: NextApiResponse): Promise<UserCredentials | undefined> {
// let user = await MUser.findOne({ where: { username: username } });
// let user = await MUser.findOne({ where: { username: username } });\
const auth = getAuth(req) || ["", ""];
console.log(auth);
let credentials: UserCredentials = { user: undefined, valid: false }
@ -51,12 +52,14 @@ async function verifyUserCredentials(req: NextApiRequest, res: NextApiResponse):
credentials.valid = true;
credentials.user = user;
return credentials;
}
async function GET(req: NextApiRequest, res: NextApiResponse) {
let a = req.cookies;
console.log(a);
let credentials = { userid: req.query.userid, token: req.query.token };
if(!credentials.token) return;
let authtoken = await MAuth.findOne({
where: {
token: credentials.token,
@ -75,15 +78,28 @@ async function GET(req: NextApiRequest, res: NextApiResponse) {
// res.status(200).json(authtokens);
}
async function POST(req: NextApiRequest, res: NextApiResponse) {
const credentials = await verifyUserCredentials(req, res);
if (!credentials || !credentials.valid || !credentials.user)
try{
let cookie = req.cookies;
const credentials = await verifyUserCredentials(req, res);
if (!credentials || !credentials.valid || !credentials.user)
return;
const user = await MUser.findOne({ where: { username: credentials.user.username } });
if (!user || !user.id)
return;
const auth = await MAuth.create({ user_id: user.id });
if(!auth){
res.status(401).end();
// res.setHeader("cookie")
}
setCookie(res, 'authtoken', auth.token, { path: '/', maxAge: 2592000 });
setCookie(res, 'user_id', auth.user_id, { path: '/', maxAge: 2592000 });
res.status(200).send(auth);
return;
const user = await MUser.findOne({ where: { username: credentials.user.username } });
if (!user)
}
catch(error){
res.status(401).json(error);
return;
res.status(200).json(await MAuth.create({ user_id: user.id }));
}
}
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
@ -91,9 +107,9 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
case 'GET':
GET(req, res); break;
case 'POST':
POST(req, res); break;
default:
res.status(404).end();
POST(req, res);
break;
default:
res.status(404).end(); break;
}
}