74 lines
3.3 KiB
Go
74 lines
3.3 KiB
Go
package router
|
|
|
|
import (
|
|
"github.com/JACKYMYPERSON/hldrCenter/config"
|
|
"github.com/JACKYMYPERSON/hldrCenter/middleware/cors"
|
|
"github.com/JACKYMYPERSON/hldrCenter/router/admin"
|
|
"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"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
// SetupRouter 初始化路由
|
|
func SetupRouter(cfg *config.Config) *gin.Engine {
|
|
r := gin.Default()
|
|
|
|
// 关键:跨域中间件必须在所有路由定义之前应用
|
|
r.Use(cors.CorsMiddleware(&cfg.Server))
|
|
//r.Use(auth.AuthMiddleware())
|
|
|
|
api := r.Group("/api")
|
|
{
|
|
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 路由无需验证
|
|
}
|
|
|
|
return r
|
|
}
|