egg_server/index.ts
zhaoyingbo f846b15451
All checks were successful
Egg Server MIflow / build-image (push) Successful in 37s
feat: 优化路径工具函数
2024-07-30 09:38:38 +00:00

38 lines
1.3 KiB
TypeScript

import { manageBotReq } from "./routes/bot"
import { manageMessageReq } from "./routes/message"
import { manageMicroAppReq } from "./routes/microApp"
import { manageSheetReq } from "./routes/sheet"
import { initSchedule } from "./schedule"
import netTool from "./services/netTool"
import { makeCheckPathTool } from "./utils/pathTools"
initSchedule()
const server = Bun.serve({
async fetch(req) {
try {
// 打印当前路由
console.log("🚀 ~ serve ~ req.url", req.url)
// 路由处理
const { exactCheck, startsWithCheck } = makeCheckPathTool(req.url)
// 机器人
if (exactCheck("/bot")) return await manageBotReq(req)
// 消息代理发送
if (exactCheck("/message")) return await manageMessageReq(req)
// 表格代理操作
if (exactCheck("/sheet")) return await manageSheetReq(req)
// 小程序
if (startsWithCheck("/micro_app")) return await manageMicroAppReq(req)
// 其他
return netTool.ok("hello, there is egg, glade to serve you!")
} catch (error: any) {
// 错误处理
console.error("🚀 ~ serve ~ error", error)
return netTool.serverError(error.message || "server error")
}
},
port: 3000,
})
console.log(`Listening on ${server.hostname}:${server.port}`)