]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
Impove 粉丝牌切换
authorqydysky <32743305+qydysky@users.noreply.github.com>
Sun, 22 Jan 2023 09:49:20 +0000 (17:49 +0800)
committerqydysky <32743305+qydysky@users.noreply.github.com>
Sun, 22 Jan 2023 09:49:20 +0000 (17:49 +0800)
F/api.go
Json/fansMedal.go [new file with mode: 0644]

index 659e130304a4ebc5b89bd250dc36fcb3a1456600..b9f711ac59ca9aa74d59087c6e34e1ae39e1c7eb 100644 (file)
--- a/F/api.go
+++ b/F/api.go
@@ -1837,16 +1837,25 @@ func (c *GetFunc) CheckSwitch_FansMedal() (missKey []string) {
                        apilog.L(`E: `, e)
                        return
                }
-               res := string(r.Respon)
-               if v, ok := p.Json().GetValFromS(res, "code").(float64); ok && v == 0 {
-                       apilog.L(`I: `, `自动切换粉丝牌 id:`, medal_id)
-                       c.Wearing_FansMedal = medal_id //更新佩戴信息
+
+               var res J.FansMedal
+
+               if e := json.Unmarshal(r.Respon, &res); e != nil {
+                       apilog.L(`E: `, e)
+                       return
+               } else if res.Code != 0 {
+                       apilog.L(`E: `, res.Message)
                        return
                }
-               if v, ok := p.Json().GetValFromS(res, "message").(string); ok {
-                       apilog.L(`E: `, `Get_FansMedal wear message`, v)
-               } else {
-                       apilog.L(`E: `, `Get_FansMedal wear message nil`)
+
+               if res.Message == "佩戴成功" {
+                       if medal_id == 0 {
+                               apilog.L(`I: `, `已取下粉丝牌`)
+                       } else {
+                               apilog.L(`I: `, `自动切换粉丝牌 id:`, medal_id)
+                       }
+                       c.Wearing_FansMedal = medal_id //更新佩戴信息
+                       return
                }
        }
        return
diff --git a/Json/fansMedal.go b/Json/fansMedal.go
new file mode 100644 (file)
index 0000000..b6af094
--- /dev/null
@@ -0,0 +1,9 @@
+package part
+
+type FansMedal struct {
+       Code    int    `json:"code"`
+       Message string `json:"message"`
+       TTL     int    `json:"ttl"`
+       Data    struct {
+       } `json:"data"`
+}