Files
core_ng/server/index.ts
T
2023-08-05 12:12:18 +00:00

64 lines
1.5 KiB
TypeScript

import 'reflect-metadata';
import { BasicQueryDTO } from './api/index.js';
import { validate } from 'class-validator';
import express, { Request, Response } from "express"
import { AppDataSource } from "./data_source"
import dotenv from "dotenv";
import session from "express-session";
import path from 'node:path';
dotenv.config({
path: `.env.server.${process.env.NODE_ENV}`
});
export async function test() {
console.log("Hello World!");
const dto = new BasicQueryDTO();
dto.command = 'None';
dto.generalID = 1.1;
const result = await validate(dto);
console.log(result);
//must be integer가 나타나야함
}
await test();
AppDataSource.initialize().then(async () => {
// create express app
const app = express()
app.use(bodyParser.json())
app.use(session({
secret: ownConfig.sessionSecret,
resave: false,
saveUninitialized: false,
}))
app.set('etag', false);
initPKIjs();
app.use('/', rootRouter);
await fs.mkdir(certDirPath, { recursive: true });
if (!existsSync(rootSignKeyPath)) {
console.info('generate sign key');
generateRootSignKey();
}
if (!existsSync(rootCertPath)) {
console.info('generate root certificate');
await generateRootCertificateEasy();
}
// start express server
app.listen(ownConfig.port)
console.log(`Express server has started on port ${ownConfig.port}`)
}).catch(error => console.log(error))
export default {};