修改为openapi 全面支持2.9 解决xdd和青龙抢登录问题

This commit is contained in:
ZJY 2021-09-02 10:50:05 +08:00
parent 27dadfa763
commit f95ec9ef08

View File

@ -508,20 +508,39 @@ func (c *Container) postConfig(handle func(config string) string) error {
}
func (c *Container) getSession() error {
req := httplib.Post(c.Address + "/auth")
req.Param("username", c.Username)
req.Param("password", c.Password)
rsp, err := req.Response()
if err != nil {
return err
}
c.Token = rsp.Header.Get("Set-Cookie")
if data, err := ioutil.ReadAll(rsp.Body); err != nil {
return err
if c.Version == "2.9" {
req := httplib.Post(c.Address + "/open/auth")
req.Param("username", c.Username)
req.Param("password", c.Password)
rsp, err := req.Response()
if err != nil {
return err
}
c.Token = rsp.Header.Get("Set-Cookie")
if data, err := ioutil.ReadAll(rsp.Body); err != nil {
return err
} else {
err, _ := jsonparser.GetInt(data, "err")
if err != 0 {
return errors.New(string(data))
}
}
} else {
err, _ := jsonparser.GetInt(data, "err")
if err != 0 {
return errors.New(string(data))
req := httplib.Post(c.Address + "/auth")
req.Param("username", c.Username)
req.Param("password", c.Password)
rsp, err := req.Response()
if err != nil {
return err
}
c.Token = rsp.Header.Get("Set-Cookie")
if data, err := ioutil.ReadAll(rsp.Body); err != nil {
return err
} else {
err, _ := jsonparser.GetInt(data, "err")
if err != 0 {
return errors.New(string(data))
}
}
}
return nil