resolved problem
This commit is contained in:
parent
6b42a39bae
commit
838c2df336
@ -27,7 +27,8 @@ type UserCredentials = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function verifyUserCredentials(req: NextApiRequest, res: NextApiResponse): Promise<UserCredentials | undefined> {
|
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) || ["", ""];
|
const auth = getAuth(req) || ["", ""];
|
||||||
console.log(auth);
|
console.log(auth);
|
||||||
let credentials: UserCredentials = { user: undefined, valid: false }
|
let credentials: UserCredentials = { user: undefined, valid: false }
|
||||||
@ -51,12 +52,14 @@ async function verifyUserCredentials(req: NextApiRequest, res: NextApiResponse):
|
|||||||
credentials.valid = true;
|
credentials.valid = true;
|
||||||
credentials.user = user;
|
credentials.user = user;
|
||||||
return credentials;
|
return credentials;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function GET(req: NextApiRequest, res: NextApiResponse) {
|
async function GET(req: NextApiRequest, res: NextApiResponse) {
|
||||||
let a = req.cookies;
|
let a = req.cookies;
|
||||||
console.log(a);
|
console.log(a);
|
||||||
let credentials = { userid: req.query.userid, token: req.query.token };
|
let credentials = { userid: req.query.userid, token: req.query.token };
|
||||||
|
if(!credentials.token) return;
|
||||||
let authtoken = await MAuth.findOne({
|
let authtoken = await MAuth.findOne({
|
||||||
where: {
|
where: {
|
||||||
token: credentials.token,
|
token: credentials.token,
|
||||||
@ -75,15 +78,28 @@ async function GET(req: NextApiRequest, res: NextApiResponse) {
|
|||||||
// res.status(200).json(authtokens);
|
// res.status(200).json(authtokens);
|
||||||
}
|
}
|
||||||
async function POST(req: NextApiRequest, res: NextApiResponse) {
|
async function POST(req: NextApiRequest, res: NextApiResponse) {
|
||||||
|
try{
|
||||||
const credentials = await verifyUserCredentials(req, res);
|
let cookie = req.cookies;
|
||||||
if (!credentials || !credentials.valid || !credentials.user)
|
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;
|
return;
|
||||||
const user = await MUser.findOne({ where: { username: credentials.user.username } });
|
}
|
||||||
if (!user)
|
catch(error){
|
||||||
|
res.status(401).json(error);
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
res.status(200).json(await MAuth.create({ user_id: user.id }));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
export default async function handler(req: NextApiRequest, res: NextApiResponse) {
|
||||||
@ -91,9 +107,9 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
|
|||||||
case 'GET':
|
case 'GET':
|
||||||
GET(req, res); break;
|
GET(req, res); break;
|
||||||
case 'POST':
|
case 'POST':
|
||||||
POST(req, res); break;
|
POST(req, res);
|
||||||
default:
|
|
||||||
res.status(404).end();
|
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
res.status(404).end(); break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user