Ver Fonte

[warp] report error in change license

Co-Authored-By: Alireza Ahmadi <[email protected]>
mhsanaei há 3 meses atrás
pai
commit
4e0aca16c2
1 ficheiros alterados com 12 adições e 1 exclusões
  1. 12 1
      web/service/warp.go

+ 12 - 1
web/service/warp.go

@@ -8,6 +8,7 @@ import (
 	"os"
 	"time"
 	"x-ui/logger"
+	"x-ui/util/common"
 )
 
 type WarpService struct {
@@ -150,13 +151,23 @@ func (s *WarpService) SetWarpLicense(license string) (string, error) {
 		return "", err
 	}
 
+	var response map[string]interface{}
+	err = json.Unmarshal(buffer.Bytes(), &response)
+	if err != nil {
+		return "", err
+	}
+	if response["success"] == false {
+		errorArr, _ := response["errors"].([]interface{})
+		errorObj := errorArr[0].(map[string]interface{})
+		return "", common.NewError(errorObj["code"], errorObj["message"])
+	}
+
 	warpData["license_key"] = license
 	newWarpData, err := json.MarshalIndent(warpData, "", "  ")
 	if err != nil {
 		return "", err
 	}
 	s.SettingService.SetWarp(string(newWarpData))
-	println(string(newWarpData))
 
 	return string(newWarpData), nil
 }