Browse Source

调整 tmdb api 测试接口

Signed-off-by: allan716 <[email protected]>
allan716 3 years ago
parent
commit
f75d43fd46

+ 3 - 1
internal/backend/base_router.go

@@ -29,7 +29,7 @@ func InitRouter(
 	if settings.AdvancedSettings.TmdbApiSettings != nil &&
 	if settings.AdvancedSettings.TmdbApiSettings != nil &&
 		settings.AdvancedSettings.TmdbApiSettings.Enable == true &&
 		settings.AdvancedSettings.TmdbApiSettings.Enable == true &&
 		settings.AdvancedSettings.TmdbApiSettings.ApiKey != "" {
 		settings.AdvancedSettings.TmdbApiSettings.ApiKey != "" {
-		
+
 		tmdbApi, err = tmdb_api.NewTmdbHelper(cronHelper.Logger, settings.AdvancedSettings.TmdbApiSettings.ApiKey, settings.AdvancedSettings.ProxySettings)
 		tmdbApi, err = tmdb_api.NewTmdbHelper(cronHelper.Logger, settings.AdvancedSettings.TmdbApiSettings.ApiKey, settings.AdvancedSettings.ProxySettings)
 		if err != nil {
 		if err != nil {
 			cronHelper.Logger.Panicln("NewTmdbHelper", err)
 			cronHelper.Logger.Panicln("NewTmdbHelper", err)
@@ -83,6 +83,8 @@ func InitRouter(
 
 
 	router.POST("/check-emby-settings", cbBase.CheckEmbySettingsHandler)
 	router.POST("/check-emby-settings", cbBase.CheckEmbySettingsHandler)
 
 
+	router.POST("/check-tmdb-api-settings", cbBase.CheckTmdbApiHandler)
+
 	// v1路由: /v1/xxx
 	// v1路由: /v1/xxx
 	GroupV1 := router.Group("/" + cbV1.GetVersion())
 	GroupV1 := router.Group("/" + cbV1.GetVersion())
 	{
 	{

+ 43 - 0
internal/backend/controllers/base/tmdb_api.go

@@ -0,0 +1,43 @@
+package base
+
+import (
+	"net/http"
+
+	"github.com/allanpk716/ChineseSubFinder/pkg/tmdb_api"
+	"github.com/allanpk716/ChineseSubFinder/pkg/types/backend"
+	"github.com/gin-gonic/gin"
+)
+
+func (cb *ControllerBase) CheckTmdbApiHandler(c *gin.Context) {
+	var err error
+	defer func() {
+		// 统一的异常处理
+		cb.ErrorProcess(c, "CheckTmdbApiHandler", err)
+	}()
+
+	req := tmdb_api.Req{}
+	err = c.ShouldBindJSON(&req)
+	if err != nil {
+		return
+	}
+	if req.ApiKey == "" {
+		c.JSON(http.StatusOK, backend.ReplyCommon{Message: "false"})
+		return
+	}
+	tmdbApi, err := tmdb_api.NewTmdbHelper(cb.fileDownloader.Log,
+		req.ApiKey,
+		cb.fileDownloader.Settings.AdvancedSettings.ProxySettings)
+	if err != nil {
+		cb.fileDownloader.Log.Errorln("NewTmdbHelper", err)
+		return
+	}
+	if tmdbApi.Alive() == false {
+		cb.fileDownloader.Log.Errorln("tmdbApi.Alive() == false")
+		c.JSON(http.StatusOK, backend.ReplyCommon{Message: "false"})
+		return
+	} else {
+		cb.fileDownloader.Log.Infoln("tmdbApi.Alive() == true")
+		c.JSON(http.StatusOK, backend.ReplyCommon{Message: "true"})
+		return
+	}
+}

+ 9 - 3
pkg/tmdb_api/tmdb.go

@@ -40,12 +40,14 @@ func NewTmdbHelper(l *logrus.Logger, apiKey string, _proxySettings ...*settings.
 
 
 func (t *TmdbApi) Alive() bool {
 func (t *TmdbApi) Alive() bool {
 
 
-	details, err := t.tmdbClient.GetAccountDetails()
+	options := make(map[string]string)
+	options["language"] = "en-US"
+	searchMulti, err := t.tmdbClient.GetSearchMulti("Dexter", options)
 	if err != nil {
 	if err != nil {
-		t.l.Errorln("GetAccountDetails", err)
+		t.l.Errorln("GetSearchMulti", err)
 		return false
 		return false
 	}
 	}
-	t.l.Infoln("GetAccountDetails UserName:", details.Username)
+	t.l.Infoln("GetSearchMulti TotalResults:", searchMulti.TotalResults)
 	return true
 	return true
 }
 }
 
 
@@ -208,3 +210,7 @@ type ConvertIdResult struct {
 	TmdbID string `json:"tmdb_id"`
 	TmdbID string `json:"tmdb_id"`
 	TvdbID string `json:"tvdb_id"`
 	TvdbID string `json:"tvdb_id"`
 }
 }
+
+type Req struct {
+	ApiKey string `json:"api_key"`
+}