|
@@ -134,9 +134,6 @@ func (s *sussBi) AutoLogin() error {
|
|
|
if !(resp.StatusCode == 302 || resp.StatusCode == 200) {
|
|
|
return fmt.Errorf("自动登录异常")
|
|
|
}
|
|
|
- for _, v := range resp.Cookies() {
|
|
|
- log.Println("AutoLogin jar=======", s.Url.String(), fmt.Sprintf("%+v", v))
|
|
|
- }
|
|
|
client.Jar = s.succbiJar
|
|
|
resp, err = client.Get(fmt.Sprintf("%s/succbi/?:user=%s&:password=%s", s.addr, s.user, s.pwd))
|
|
|
if err != nil {
|
|
@@ -145,67 +142,47 @@ func (s *sussBi) AutoLogin() error {
|
|
|
if !(resp.StatusCode == 302 || resp.StatusCode == 200) {
|
|
|
return fmt.Errorf("自动登录异常")
|
|
|
}
|
|
|
- for _, v := range resp.Cookies() {
|
|
|
- log.Println("AutoLogin succbiJar=======", s.Url.String(), fmt.Sprintf("%+v", v))
|
|
|
- }
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
// RequestLogin 装配登录状态
|
|
|
func (s *sussBi) RequestLogin(r *ghttp.Request) error {
|
|
|
- if strings.HasPrefix(r.URL.Path, "/succbi") {
|
|
|
- u, e := url.Parse(s.Url.String() + "/succbi")
|
|
|
- if e != nil {
|
|
|
- return e
|
|
|
- }
|
|
|
- cookies := s.succbiJar.Cookies(u)
|
|
|
- if r.Request.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
-
|
|
|
- log.Println("bbb 装配登录状态 succbiJar", s.Url.String(), len(cookies))
|
|
|
- }
|
|
|
- if len(cookies) > 0 {
|
|
|
- if r.Request.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
-
|
|
|
- log.Println("装配登录状态 succbiJar", r.Request.RequestURI, fmt.Sprintf("%+v", cookies[0]))
|
|
|
- }
|
|
|
- r.Request.AddCookie(cookies[0])
|
|
|
+ if strings.HasPrefix(r.RequestURI, "/succbi/crm_system") {
|
|
|
+ ctx := router.GetGContext(r.GetCtx())
|
|
|
+ md5Val := common.GetMd5String(fmt.Sprintf("%s_%s_%d_%d_%d_%d_%d_%d_%s_%d_%s_%d", ctx.Sess.NickName, ctx.Sess.YyName, ctx.Sess.EntRole, ctx.Sess.EntNicheDis, ctx.Sess.PositionId, ctx.Sess.AccountId, ctx.Sess.EntAccountId, ctx.Sess.EntId, ctx.Sess.EntName, ctx.Sess.EntDeptId, ctx.Sess.EntUserName, ctx.Sess.EntUserId))
|
|
|
+ c := &http.Cookie{
|
|
|
+ Name: "BITOKEN",
|
|
|
+ Value: md5Val,
|
|
|
+ Path: "/",
|
|
|
+ HttpOnly: false,
|
|
|
+ MaxAge: 604800,
|
|
|
+ Expires: time.Now().AddDate(0, 0, 7),
|
|
|
}
|
|
|
+ r.Request.AddCookie(c)
|
|
|
+ //http.SetCookie(r.Response.ResponseWriter, c)
|
|
|
} else {
|
|
|
- cookies := s.jar.Cookies(s.Url)
|
|
|
- if r.Request.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
-
|
|
|
- log.Println("bbb 装配登录状态 jar", s.Url.String(), len(cookies))
|
|
|
- }
|
|
|
- if len(cookies) > 0 {
|
|
|
- if r.Request.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
-
|
|
|
- log.Println("装配登录状态 jar", r.Request.RequestURI, fmt.Sprintf("%+v", cookies[0]))
|
|
|
+ if strings.HasPrefix(r.URL.Path, "/succbi") {
|
|
|
+ u, e := url.Parse(s.Url.String() + "/succbi")
|
|
|
+ if e != nil {
|
|
|
+ return e
|
|
|
+ }
|
|
|
+ if cookies := s.succbiJar.Cookies(u); len(cookies) > 0 {
|
|
|
+ r.Request.AddCookie(cookies[0])
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if cookies := s.jar.Cookies(s.Url); len(cookies) > 0 {
|
|
|
+ r.Request.AddCookie(cookies[0])
|
|
|
}
|
|
|
- r.Request.AddCookie(cookies[0])
|
|
|
- }
|
|
|
- }
|
|
|
- if r.Request.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
- for _, v := range r.Request.Cookies() {
|
|
|
- log.Println("装配登录状态", r.Request.RequestURI, fmt.Sprintf("%+v", v))
|
|
|
}
|
|
|
}
|
|
|
- ctx := router.GetGContext(r.GetCtx())
|
|
|
- md5Val := common.GetMd5String(fmt.Sprintf("%s_%s_%d_%d_%d_%d_%d_%d_%s_%d_%s_%d", ctx.Sess.NickName, ctx.Sess.YyName, ctx.Sess.EntRole, ctx.Sess.EntNicheDis, ctx.Sess.PositionId, ctx.Sess.AccountId, ctx.Sess.EntAccountId, ctx.Sess.EntId, ctx.Sess.EntName, ctx.Sess.EntDeptId, ctx.Sess.EntUserName, ctx.Sess.EntUserId))
|
|
|
- c := &http.Cookie{
|
|
|
- Name: "BITOKEN",
|
|
|
- Value: md5Val,
|
|
|
- Path: "/",
|
|
|
- HttpOnly: false,
|
|
|
- MaxAge: 604800,
|
|
|
- Expires: time.Now().AddDate(0, 0, 7),
|
|
|
- }
|
|
|
- r.Request.AddCookie(c)
|
|
|
- //http.SetCookie(r.Response.ResponseWriter, c)
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
// CheckLoginOut 检测登录状态是否过期
|
|
|
func (s *sussBi) CheckLoginOut(r *ghttp.Request) bool {
|
|
|
+ if r.RequestURI == "/succbi/crm_system/app/crm.app/sales_clues.spg" {
|
|
|
+ log.Println("返回状态======", r.Response.Status)
|
|
|
+ }
|
|
|
if r.Response.Status == 401 {
|
|
|
return true
|
|
|
}
|