api.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package api
  2. import (
  3. "github.com/gogf/gf/v2/net/ghttp"
  4. "go.uber.org/dig"
  5. "yx-dataset-server/library/auth"
  6. "yx-dataset-server/library/middleware"
  7. "yx-dataset-server/router/api/controllers"
  8. )
  9. // 注册路由
  10. func RegisterRouters(s *ghttp.Server, container *dig.Container) error {
  11. controllers.Inject(container)
  12. gr := s.Group("/api")
  13. // 注册请求限制中间件
  14. return container.Invoke(func(
  15. auth auth.Auther,
  16. cLogin *controllers.Login,
  17. //cOrganization *controllers.Organization,
  18. //
  19. //cUser *controllers.User,
  20. //cDataset *controllers.Datasets,
  21. //cDatasetFile *controllers.DatasetFile,
  22. //
  23. //cMenu *controllers.Menu,
  24. //cRole *controllers.Role,
  25. //
  26. //cLogin *controllers.Login,
  27. //cFile *controllers.File,
  28. cChatAssistant *controllers.ChatAssistant,
  29. cChatMessage *controllers.ChatMessage,
  30. cChatSession *controllers.ChatSession,
  31. ) {
  32. gr.Middleware(middleware.UserAuthMiddleware(auth,
  33. middleware.AllowMethodAndPathPrefixSkipper(
  34. middleware.JoinRouter("GET", "/api/v1/login"),
  35. middleware.JoinRouter("POST", "/api/v1/login"),
  36. //middleware.JoinRouter("POST", "/api/v1/chat_messages/v1"),
  37. ),
  38. ))
  39. v1 := gr.Group("/v1")
  40. {
  41. // 登录
  42. gLogin := v1.Group("/login")
  43. {
  44. gLogin.POST("/", cLogin.Login)
  45. gLogin.POST("/exit", cLogin.Logout)
  46. gLogin.PUT("/refresh/token", cLogin.RefreshToken)
  47. }
  48. v1.GET("/current/user", cLogin.GetUserInfo)
  49. gChatAssistant := v1.Group("/chat_assistants")
  50. {
  51. gChatAssistant.GET("/", cChatAssistant.Query)
  52. gChatAssistant.GET("/:id", cChatAssistant.Get)
  53. gChatAssistant.POST("/", cChatAssistant.Create)
  54. gChatAssistant.PUT("/:id", cChatAssistant.Update)
  55. gChatAssistant.DELETE("/:id", cChatAssistant.Delete)
  56. }
  57. gChatSession := v1.Group("/chat_sessions")
  58. {
  59. gChatSession.GET("/", cChatSession.Query)
  60. gChatSession.GET("/:id", cChatSession.Get)
  61. gChatSession.POST("/", cChatSession.Create)
  62. gChatSession.PUT("/:id", cChatSession.Update)
  63. gChatSession.DELETE("/:id", cChatSession.Delete)
  64. }
  65. gChatMessage := v1.Group("/chat_messages")
  66. {
  67. gChatMessage.GET("/", cChatMessage.Query)
  68. gChatMessage.GET("/:id", cChatMessage.Get)
  69. gChatMessage.POST("/", cChatMessage.ChatMessage)
  70. gChatMessage.POST("/stream", cChatMessage.StreamChatMessage)
  71. gChatMessage.PUT("/:id", cChatMessage.Update)
  72. gChatMessage.DELETE("/:id", cChatMessage.Delete)
  73. }
  74. }
  75. })
  76. }