29 lines
No EOL
1.4 KiB
TypeScript
29 lines
No EOL
1.4 KiB
TypeScript
/*
|
||
* Report Server
|
||
* Web API สำหรับสร้างรายงาน กำหนด Path และเพิ่มฟีเจอร์ได้
|
||
* จะใช้ Node.js เป็น reverse proxy ไปหา pandoc ที่ swan ขึ้นมา
|
||
* demo frontent อยู่ในโฟลเดอร์ public
|
||
*/
|
||
import cors from "cors"
|
||
import swaggerspecs from "./libs/swagger-specs.json"
|
||
import swaggerUi from "swagger-ui-express"
|
||
import express, { Express, Request, Response } from 'express'
|
||
import { docxTemplateRoute } from './libs/docx-templates-lib'
|
||
import { xlsxTemplateRoute } from './libs/xlsx-template-lib'
|
||
import { convertTemplateRoute } from './libs/convert-libs'
|
||
const app: Express = express()
|
||
const port: number = Number(process.env.PORT) || 80;
|
||
app.use(cors());
|
||
app.use(express.json()); //‘application/json’
|
||
app.use(express.raw()); //‘application/octet-stream’
|
||
app.use(express.urlencoded({ extended: true }));
|
||
app.use("/swagger", swaggerUi.serve, swaggerUi.setup(swaggerspecs,{ explorer: true }));
|
||
app.get('/', (req: Request, res: Response) => {
|
||
res.json({
|
||
message: 'Hello report-template API !!',
|
||
})
|
||
})
|
||
app.use('/api/v1/report-template/docx', docxTemplateRoute);
|
||
app.use('/api/v1/report-template/xlsx', xlsxTemplateRoute);
|
||
app.use('/api/v1/report-template/convert', convertTemplateRoute);
|
||
app.listen(port, () => console.log(`Application is running on port ${port}`)) |