- 웹훅 URL을 https://admin.youtooplay.com/webhook로 변경 - Nginx 리버스 프록시 설정 파일 추가 - 배포 가이드 업데이트
This commit is contained in:
72
.output/server/chunks/routes/api/auth/login.post.mjs
Normal file
72
.output/server/chunks/routes/api/auth/login.post.mjs
Normal file
@@ -0,0 +1,72 @@
|
||||
import { d as defineEventHandler, r as readBody, c as createError } from '../../../nitro/nitro.mjs';
|
||||
import { PrismaClient } from '@prisma/client';
|
||||
import jwt from 'jsonwebtoken';
|
||||
import 'node:http';
|
||||
import 'node:https';
|
||||
import 'node:events';
|
||||
import 'node:buffer';
|
||||
import 'node:fs';
|
||||
import 'node:path';
|
||||
import 'node:crypto';
|
||||
import 'node:url';
|
||||
|
||||
const prisma = new PrismaClient();
|
||||
const login_post = defineEventHandler(async (event) => {
|
||||
const body = await readBody(event);
|
||||
const { user_id, password } = body;
|
||||
console.log("\uB85C\uADF8\uC778 \uC694\uCCAD:", { user_id, password: password ? "***" : "undefined" });
|
||||
if (!user_id || !password) {
|
||||
throw createError({
|
||||
statusCode: 400,
|
||||
statusMessage: "\uC544\uC774\uB514\uC640 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD574\uC8FC\uC138\uC694."
|
||||
});
|
||||
}
|
||||
try {
|
||||
const user = await prisma.members.findUnique({
|
||||
where: { user_id }
|
||||
});
|
||||
console.log("\uC0AC\uC6A9\uC790 \uC870\uD68C \uACB0\uACFC:", user);
|
||||
if (!user) {
|
||||
throw createError({
|
||||
statusCode: 401,
|
||||
statusMessage: "\uC874\uC7AC\uD558\uC9C0 \uC54A\uB294 \uC544\uC774\uB514\uC785\uB2C8\uB2E4."
|
||||
});
|
||||
}
|
||||
if (user.password !== password) {
|
||||
console.log("\uBE44\uBC00\uBC88\uD638 \uBD88\uC77C\uCE58:", {
|
||||
\uC785\uB825\uB41C\uBE44\uBC00\uBC88\uD638: password,
|
||||
\uC800\uC7A5\uB41C\uBE44\uBC00\uBC88\uD638: user.password
|
||||
});
|
||||
throw createError({
|
||||
statusCode: 401,
|
||||
statusMessage: "\uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4."
|
||||
});
|
||||
}
|
||||
console.log("\uB85C\uADF8\uC778 \uC131\uACF5:", { user_id: user.user_id, name: user.name });
|
||||
const token = jwt.sign(
|
||||
{ id: user.id, user_id: user.user_id, name: user.name, role_level: user.role_level },
|
||||
"your-secret-key",
|
||||
// 실제 서비스에서는 환경 변수로 관리
|
||||
{ expiresIn: "24h" }
|
||||
);
|
||||
return {
|
||||
success: true,
|
||||
message: "\uB85C\uADF8\uC778 \uC131\uACF5",
|
||||
token,
|
||||
user: {
|
||||
id: user.id,
|
||||
user_id: user.user_id,
|
||||
name: user.name,
|
||||
role_level: user.role_level
|
||||
}
|
||||
};
|
||||
} catch (error) {
|
||||
console.error("\uB85C\uADF8\uC778 \uC624\uB958:", error);
|
||||
throw createError({
|
||||
statusCode: error.statusCode || 500,
|
||||
statusMessage: error.statusMessage || "\uB85C\uADF8\uC778 \uC911 \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4."
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
export { login_post as default };
|
||||
Reference in New Issue
Block a user