improve: 完成对主程序登录函数的改造
This commit is contained in:
@@ -29,7 +29,7 @@ func Guardian() {
|
|||||||
_ = recover()
|
_ = recover()
|
||||||
}()
|
}()
|
||||||
if global.Config.Settings.Basic.Interfaces == "" { //单网卡
|
if global.Config.Settings.Basic.Interfaces == "" { //单网卡
|
||||||
e := Login(nil)
|
e := Login(nil, true)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
log.Errorln("登录出错: ", e)
|
log.Errorln("登录出错: ", e)
|
||||||
}
|
}
|
||||||
@@ -38,7 +38,7 @@ func Guardian() {
|
|||||||
if e == nil {
|
if e == nil {
|
||||||
for _, eth := range interfaces {
|
for _, eth := range interfaces {
|
||||||
log.Debugf("使用 %s 网口登录 ", eth.Name)
|
log.Debugf("使用 %s 网口登录 ", eth.Name)
|
||||||
e = Login(eth.Addr)
|
e = Login(eth.Addr, true)
|
||||||
if e != nil {
|
if e != nil {
|
||||||
log.Errorln("网口 ", eth.Name+" 登录出错: ", e)
|
log.Errorln("网口 ", eth.Name+" 登录出错: ", e)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,17 +4,44 @@ import (
|
|||||||
"github.com/Mmx233/BitSrunLoginGo/global"
|
"github.com/Mmx233/BitSrunLoginGo/global"
|
||||||
"github.com/Mmx233/BitSrunLoginGo/util"
|
"github.com/Mmx233/BitSrunLoginGo/util"
|
||||||
BitSrun "github.com/Mmx233/BitSrunLoginGo/v1"
|
BitSrun "github.com/Mmx233/BitSrunLoginGo/v1"
|
||||||
|
log "github.com/sirupsen/logrus"
|
||||||
"net"
|
"net"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Login 登录逻辑
|
// Login 登录逻辑
|
||||||
func Login(localAddr net.Addr) error {
|
func Login(localAddr net.Addr, debugOutput bool) error {
|
||||||
return BitSrun.Login(&BitSrun.Conf{
|
conf := &BitSrun.Conf{
|
||||||
Https: global.Config.Settings.Basic.Https,
|
Https: global.Config.Settings.Basic.Https,
|
||||||
LoginInfo: BitSrun.LoginInfo{
|
LoginInfo: BitSrun.LoginInfo{
|
||||||
Form: &global.Config.Form,
|
Form: &global.Config.Form,
|
||||||
Meta: &global.Config.Meta,
|
Meta: &global.Config.Meta,
|
||||||
},
|
},
|
||||||
Client: util.HttpTools(localAddr).Client,
|
Client: util.HttpTools(localAddr).Client,
|
||||||
})
|
}
|
||||||
|
|
||||||
|
var output func(args ...interface{})
|
||||||
|
if debugOutput {
|
||||||
|
output = log.Debugln
|
||||||
|
} else {
|
||||||
|
output = log.Infoln
|
||||||
|
}
|
||||||
|
|
||||||
|
output("正在获取登录状态")
|
||||||
|
|
||||||
|
online, ip, e := BitSrun.LoginStatus(conf)
|
||||||
|
if e != nil {
|
||||||
|
return e
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Debugln("认证客户端 ip: ", ip)
|
||||||
|
|
||||||
|
if online {
|
||||||
|
output("已登录~")
|
||||||
|
|
||||||
|
return nil
|
||||||
|
} else {
|
||||||
|
output("检测到用户未登录,开始尝试登录...")
|
||||||
|
|
||||||
|
return BitSrun.DoLogin(ip, conf)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
8
main.go
8
main.go
@@ -19,7 +19,7 @@ func main() {
|
|||||||
//登录流程
|
//登录流程
|
||||||
var err error
|
var err error
|
||||||
if global.Config.Settings.Basic.Interfaces == "" { //单网卡
|
if global.Config.Settings.Basic.Interfaces == "" { //单网卡
|
||||||
if err = controllers.Login(nil); err != nil {
|
if err = controllers.Login(nil, false); err != nil {
|
||||||
log.Errorln("登录出错: ", err)
|
log.Errorln("登录出错: ", err)
|
||||||
if !global.Config.Settings.Log.DebugLevel {
|
if !global.Config.Settings.Log.DebugLevel {
|
||||||
fmt.Printf("开启调试日志(debug_level)获取详细信息")
|
fmt.Printf("开启调试日志(debug_level)获取详细信息")
|
||||||
@@ -27,11 +27,11 @@ func main() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
} else { //多网卡
|
} else { //多网卡
|
||||||
log.Debugln("多网卡模式")
|
log.Infoln("多网卡模式")
|
||||||
interfaces, _ := util.GetInterfaceAddr()
|
interfaces, _ := util.GetInterfaceAddr()
|
||||||
for _, eth := range interfaces {
|
for _, eth := range interfaces {
|
||||||
log.Debugln("使用网卡: ", eth.Name)
|
log.Infoln("使用网卡: ", eth.Name)
|
||||||
if err = controllers.Login(eth.Addr); err != nil {
|
if err = controllers.Login(eth.Addr, false); err != nil {
|
||||||
log.Errorln("登录出错: ", err)
|
log.Errorln("登录出错: ", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user