fix 修复适配问题,修复连接失败不报错问题

This commit is contained in:
ZJY 2021-10-11 11:12:37 +08:00
parent b422b2c5c6
commit a8836e6545
3 changed files with 17 additions and 54 deletions

View File

@ -60,9 +60,9 @@ func initContainer() {
version, err := GetQlVersion(Config.Containers[i].Address)
if err == nil {
if Config.Containers[i].getToken() == nil {
logs.Info("青龙" + version + "登录成功")
logs.Info("青龙" + version + "通道登录成功")
} else {
logs.Warn("青龙" + version + "登录失败")
logs.Warn("青龙" + version + "通道登录失败")
}
Config.Containers[i].Type = "ql"
Config.Containers[i].Version = version
@ -116,7 +116,7 @@ func initContainer() {
func (c *Container) write(cks []JdCookie) error {
switch c.Type {
case "ql":
if c.Version == "2.9" || c.Version == "2.8" {
if c.Version == "openapi" {
if len(c.Delete) > 0 {
c.request("/api/envs", DELETE, fmt.Sprintf(`[%s]`, strings.Join(c.Delete, ",")))
}
@ -241,7 +241,7 @@ func (c *Container) read() error {
c.Available = true
switch c.Type {
case "ql":
if c.Version == "2.9" || c.Version == "2.8" {
if c.Version == "openapi" {
type AutoGenerated struct {
Code int `json:"code"`
Data []struct {
@ -356,34 +356,12 @@ func (c *Container) getToken() error {
version, err := GetQlVersion(c.Address)
logs.Debug(err)
if version == "2.9" {
token, err := getSqlToken(c.Address)
if err != nil {
logs.Error(err)
}
getT(c, token)
token := &Token{}
err, b2 := getT(c, token)
if b2 {
c.Token = token.Token
//if token == nil {
// err2, done := getT(c, token)
// if done {
// return err2
// }
//} else {
// logs.Info("缓存token")
// h, _ := time.ParseDuration("-624h")
// tZero := time.Now().Add(h)
// logs.Info(tZero)
// logs.Info(token.Expiration)
// t_ := token.Expiration.Sub(tZero)
// if t_ < 0 {
// err2, done := getT(c, token)
// if done {
// return err2
// }
// } else {
// logs.Info("获取缓存成功")
// c.Token = token.Token
// }
//}
}
return err
} else {
req := httplib.Post(c.Address + "/api/login")
req.Header("Content-Type", "application/json;charset=UTF-8")
@ -418,7 +396,6 @@ func getT(c *Container, token *Token) (error, bool) {
zero, _ := time.ParseInLocation("2006-01-02", time.Now().Local().Format("2006-01-02"), time.Local)
token.Expiration = zero
token.Address = c.Address
setSqlToken(token)
logs.Info(c.Token + token.Expiration.String())
} else {
return err, true
@ -432,7 +409,7 @@ func (c *Container) request(ss ...string) ([]byte, error) {
if s == GET || s == POST || s == PUT || s == DELETE {
method = s
} else if strings.Contains(s, "/api/") {
if c.Version == "2.9" {
if c.Version == "openapi" {
api = strings.ReplaceAll(s, "api", "open")
} else {
api = s
@ -491,14 +468,10 @@ func GetQlVersion(address string) (string, error) {
}
v := ""
//logs.Info(data)
if strings.Contains(data, "v2.8") {
v = "2.8"
} else if strings.Contains(data, "v2.2") {
v = "2.2"
} else if strings.Contains(data, "v2.9") {
v = "2.9"
if strings.Contains(data, "v2.2") {
v = "api"
} else {
v = "2.9"
v = "openapi"
}
return v, nil
}

View File

@ -321,17 +321,3 @@ func CheckIn(pin, key string) int {
}
return 2
}
func setSqlToken(token *Token) error {
tx := db.Begin()
if err := tx.Create(token).Error; err != nil {
tx.Rollback()
return err
}
return tx.Commit().Error
}
func getSqlToken(address string) (*Token, error) {
token := &Token{}
return token, db.Where(Address+" = ?", address).Order("expiration desc").First(token).Error
}

View File

@ -13,6 +13,10 @@
# 更新日志
## 10-11
- 适配V2.8+版本包括即将来的3.0版本都适配了 = - 基本你们能用到黄了把
## 10-07
- 新增延时设置,怕黑号调高,不怕的调低