video-router.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. package router
  2. import (
  3. "one-api/controller"
  4. "one-api/middleware"
  5. "github.com/gin-gonic/gin"
  6. )
  7. func SetVideoRouter(router *gin.Engine) {
  8. videoV1Router := router.Group("/v1")
  9. videoV1Router.Use(middleware.TokenAuth(), middleware.Distribute())
  10. {
  11. videoV1Router.POST("/video/generations", controller.RelayTask)
  12. videoV1Router.GET("/video/generations/:task_id", controller.RelayTask)
  13. }
  14. klingV1Router := router.Group("/kling/v1")
  15. klingV1Router.Use(middleware.KlingRequestConvert(), middleware.TokenAuth(), middleware.Distribute())
  16. {
  17. klingV1Router.POST("/videos/text2video", controller.RelayTask)
  18. klingV1Router.POST("/videos/image2video", controller.RelayTask)
  19. klingV1Router.GET("/videos/text2video/:task_id", controller.RelayTask)
  20. klingV1Router.GET("/videos/image2video/:task_id", controller.RelayTask)
  21. }
  22. // Jimeng official API routes - direct mapping to official API format
  23. jimengOfficialGroup := router.Group("jimeng")
  24. jimengOfficialGroup.Use(middleware.JimengRequestConvert(), middleware.TokenAuth(), middleware.Distribute())
  25. {
  26. // Maps to: /?Action=CVSync2AsyncSubmitTask&Version=2022-08-31 and /?Action=CVSync2AsyncGetResult&Version=2022-08-31
  27. jimengOfficialGroup.POST("/", controller.RelayTask)
  28. }
  29. }