Files

74 lines
3.3 KiB
Go
Raw Permalink Normal View History

2025-10-04 20:48:50 +08:00
package router
import (
"github.com/JACKYMYPERSON/hldrCenter/config"
2025-11-03 17:23:03 +08:00
"github.com/JACKYMYPERSON/hldrCenter/middleware/cors"
"github.com/JACKYMYPERSON/hldrCenter/router/admin"
2025-11-03 09:28:49 +08:00
"github.com/JACKYMYPERSON/hldrCenter/router/article"
"github.com/JACKYMYPERSON/hldrCenter/router/baseoverview"
"github.com/JACKYMYPERSON/hldrCenter/router/course/course_activity"
"github.com/JACKYMYPERSON/hldrCenter/router/course/course_content"
"github.com/JACKYMYPERSON/hldrCenter/router/course/course_file"
"github.com/JACKYMYPERSON/hldrCenter/router/course/course_resource"
"github.com/JACKYMYPERSON/hldrCenter/router/course/course_teacher"
"github.com/JACKYMYPERSON/hldrCenter/router/course/maincourse"
"github.com/JACKYMYPERSON/hldrCenter/router/course/teaching_case"
"github.com/JACKYMYPERSON/hldrCenter/router/course/video_case"
"github.com/JACKYMYPERSON/hldrCenter/router/devproject"
"github.com/JACKYMYPERSON/hldrCenter/router/meeting/main_meeting"
"github.com/JACKYMYPERSON/hldrCenter/router/meeting/meeting_speaker"
"github.com/JACKYMYPERSON/hldrCenter/router/page_imgs"
"github.com/JACKYMYPERSON/hldrCenter/router/ping"
"github.com/JACKYMYPERSON/hldrCenter/router/social/social_service"
"github.com/JACKYMYPERSON/hldrCenter/router/social/social_service_governmentprogram"
"github.com/JACKYMYPERSON/hldrCenter/router/social/social_service_internship"
"github.com/JACKYMYPERSON/hldrCenter/router/upload/cover"
"github.com/JACKYMYPERSON/hldrCenter/router/upload/file"
"github.com/JACKYMYPERSON/hldrCenter/router/upload/images"
2025-10-04 20:48:50 +08:00
"github.com/gin-gonic/gin"
)
// SetupRouter 初始化路由
func SetupRouter(cfg *config.Config) *gin.Engine {
r := gin.Default()
2025-10-04 21:18:35 +08:00
// 关键:跨域中间件必须在所有路由定义之前应用
2025-11-03 17:23:03 +08:00
r.Use(cors.CorsMiddleware(&cfg.Server))
//r.Use(auth.AuthMiddleware())
2025-10-04 21:18:35 +08:00
2025-10-04 20:48:50 +08:00
api := r.Group("/api")
{
2025-11-03 17:23:03 +08:00
authRequired := api.Group("/")
//authRequired.Use(auth.AuthMiddleware()) // 仅对该子分组下的路由生效
{
// 所有需要验证的路由都注册到 authRequired 下
images.FileImagesRouter(authRequired, cfg)
cover.FileCoverRouter(authRequired, cfg)
file.FileCoverRouter(authRequired, cfg)
ping.PingRouter(authRequired, cfg)
article.ArticleRouter(authRequired, cfg)
baseoverview.BaseOverViewRouter(authRequired, cfg)
devproject.DevProjectRouter(authRequired, cfg)
page_imgs.Pages_imgs_Router(authRequired, cfg)
main_meeting.MainMeetingRouter(authRequired, cfg)
meeting_speaker.Meeting_Speaker_Router(authRequired, cfg)
social_service.Social_Service_Router(authRequired, cfg)
social_service_internship.Social_Service_Internship_Router(authRequired, cfg)
social_service_governmentprogram.Social_Service_Government_Router(authRequired, cfg)
maincourse.MainCourseRouter(authRequired, cfg)
teaching_case.Teaching_Case_Router(authRequired, cfg)
video_case.Video_Case_Router(authRequired, cfg)
course_content.Course_Content_Router(authRequired, cfg)
course_file.Course_Content_Router(authRequired, cfg)
course_activity.Course_Activity_Router(authRequired, cfg)
course_resource.Course_Resource_Router(authRequired, cfg)
course_teacher.Course_Teacher_Router(authRequired, cfg)
}
// 2. 不需要身份验证的路由:直接注册到 api 分组下,不应用 auth 中间件
admin.AdminRouter(api, cfg) // admin 路由无需验证
2025-10-04 20:48:50 +08:00
}
return r
}