]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
扫码登录错误,日志错误
authorqydysky <qydysky@foxmail.com>
Tue, 29 Dec 2020 00:07:01 +0000 (08:07 +0800)
committerqydysky <qydysky@foxmail.com>
Tue, 29 Dec 2020 00:07:01 +0000 (08:07 +0800)
CV/Var.go
F/api.go
bili_danmu.go

index f8b6226e13968c80615f6a4eab82ff291dd04b01..5c7daf93af299383ed576e2d56baae2ee5d6cc53 100644 (file)
--- a/CV/Var.go
+++ b/CV/Var.go
@@ -39,6 +39,7 @@ var Log = log.New(log.Config{
                `T: `:log.On,
                `I: `:log.On,
                `N: `:log.On,
+               `W: `:log.On,
                `E: `:log.On,
        },
 })
index 5d8e1943b3c6d9f68b3392d3e410ee6c3f2a377e..9cc749315b78c39cd711dc86ad7928292e3525cd 100644 (file)
--- a/F/api.go
+++ b/F/api.go
@@ -593,7 +593,6 @@ func (i *api) Get_Version() {
 func Get_cookie() {
        if api_limit.TO() {return}//超额请求阻塞,超时将取消
        apilog := apilog.Base_add(`获取Cookie`)
-       defer apilog.L(`T: `,"ok")
 
        var img_url string
        var oauth string
@@ -626,10 +625,6 @@ func Get_cookie() {
        }
        var server *http.Server
        {//生成二维码
-               if p.Checkfile().IsExist(`qr.png`) {
-                       apilog.L(`E: `,`qr.png已存在`)
-                       return
-               }
                qr.WriteFile(img_url,qr.Medium,256,`qr.png`)
                if !p.Checkfile().IsExist(`qr.png`) {
                        apilog.L(`E: `,`qr error`)
@@ -651,11 +646,20 @@ func Get_cookie() {
                        apilog.L(`W: `,`打开链接扫码登录:`,`http://`+server.Addr+`/qr.png`)
                        server.ListenAndServe()
                }()
+               p.Sys().Timeoutf(1)
        }
        var cookie string
        {//3s刷新查看是否通过
                max_try := 20
-               for max_try > 0 {
+               change_room_sign := false
+               c.Danmu_Main_mq.Pull_tag(map[string]func(interface{})(bool){
+                       `change_room`:func(data interface{})(bool){//房间改变
+                               change_room_sign = true
+                               return true
+                       },
+               })
+
+               for max_try > 0 && !change_room_sign {
                        max_try -= 1
                        p.Sys().Timeoutf(3)
                        r := p.Req()
index 139d28460322c2a5fdf5da02af44e1ecf288d3b2..987e385b371a63b1fb107fc499c39c1fce0e6a25 100644 (file)
@@ -89,6 +89,16 @@ func Demo(roomid ...int) {
                                var q = p.Filel{
                                        Write:false,
                                }
+                               var get_cookie = func(){
+                                       danmulog.L(`I: `, "未检测到cookie.txt,如果需要登录请在本机打开以下网址扫码登录,不需要请忽略")
+                                       //获取cookie
+                                       F.Get_cookie()
+                                       if c.Cookie != `` {
+                                               danmulog.L(`I: `,"你已登录,刷新房间!")
+                                               //刷新
+                                               c.Danmu_Main_mq.Push_tag(`change_room`,nil)
+                                       }
+                               }
                                if p.Checkfile().IsExist("cookie.txt") {
                                        q.File = "cookie.txt"
                                        f := p.File().FileWR(q)
@@ -96,18 +106,16 @@ func Demo(roomid ...int) {
                                        if tmp_uid,e := g.SS(f,`DedeUserID=`,`;`,0,0);e == nil {
                                                if v,e := strconv.Atoi(tmp_uid);e == nil {
                                                        c.Uid = v
-                                               } else {danmulog.L(`E: `, e)}
-                                       } else {danmulog.L(`E: `, e)}
-                               } else {
-                                       danmulog.L(`I: `, "未检测到cookie.txt,如果需要登录请在本机打开以下网址扫码登录,不需要请忽略")
-                                       go func(){//获取cookie
-                                               F.Get_cookie()
-                                               if c.Cookie != `` {
-                                                       danmulog.L(`I: `,"你已登录,刷新房间!")
-                                                       //刷新
-                                                       c.Danmu_Main_mq.Push_tag(`change_room`,nil)
+                                               } else {
+                                                       danmulog.L(`E: `, `读取cookie错误`,e)
+                                                       go get_cookie()
                                                }
-                                       }()
+                                       } else {
+                                               danmulog.L(`E: `, `读取cookie错误`,e)
+                                               go get_cookie()
+                                       }
+                               } else {
+                                       go get_cookie()
                                        p.Sys().Timeoutf(3)
                                }
                        }