123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package http
- import (
- "cicv-data-closedloop/amd64/web_server/src/infrastructure/config"
- "cicv-data-closedloop/amd64/web_server/src/interfaces/api"
- "cicv-data-closedloop/common/config/c_log"
- "cicv-data-closedloop/common/gin/middleware"
- "github.com/gin-gonic/gin"
- "os"
- )
- func CreateServer() {
- // 创建 gin 实例
- router := gin.Default()
- // 使用中间件
- router.Use(middleware.Cors()) // 解决cors
- router.Use(middleware.LogRequest()) // 请求日志打印
- router.Use(middleware.ValidateHeaders(config.ApplicationYaml.Web.WhiteList, config.ApplicationYaml.Web.Token)) // 全局请求头校验
- // 通过路由组设置全局前缀
- webPrefix := router.Group(config.ApplicationYaml.Web.RoutePrefix)
- {
- examPrefix := webPrefix.Group("/exam")
- {
- examPrefix.POST("/tick", api.Tick) // 考试开始
- go api.ExamEndTicker() // 考试结束
- examPrefix.POST("/display", api.Display) // 云控展示线上评分
- examPrefix.POST("/page", api.Page) // 分页查询
- examPrefix.POST("/report", api.Report) // pdf下载
- examPrefix.POST("/offline", api.Offline) // 录入线下成绩
- }
- }
- {
- monitorPrefix := webPrefix.Group("/monitor")
- {
- monitorPrefix.POST("/insert", api.SaveDeviceMonitor)
- }
- }
- {
- collectLimitPrefix := webPrefix.Group("/collect_limit")
- {
- collectLimitPrefix.POST("/can_collect", api.TriggerCollect)
- collectLimitPrefix.POST("/plus_collect_num", api.CanCollectPlus)
- }
- }
- // 端口
- err := router.Run(":" + config.ApplicationYaml.Web.Port)
- if err != nil {
- c_log.GlobalLogger.Error("程序崩溃,监听端口 "+config.ApplicationYaml.Web.Port+" 失败:", err)
- os.Exit(-1)
- }
- }
|