智盟项目
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

svc_kuaishou_auth.go 2.0 KiB

před 10 měsíci
před 1 týdnem
před 10 měsíci
před 9 měsíci
před 10 měsíci
před 1 týdnem
před 10 měsíci
před 1 týdnem
před 10 měsíci
před 1 týdnem
před 10 měsíci
před 9 měsíci
před 10 měsíci
před 9 měsíci
před 10 měsíci
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package svc
  2. import (
  3. "applet/app/db"
  4. offical "applet/app/db/official"
  5. "applet/app/utils"
  6. "applet/app/utils/cache"
  7. "code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/kuaishou"
  8. "github.com/tidwall/gjson"
  9. "strings"
  10. "time"
  11. )
  12. func KuaishouAuth() {
  13. kuaishouAppkey := offical.MasterListCfgGetOneData("0", "kuaishou_kfx_appkey")
  14. kuaishouAppSecret := offical.MasterListCfgGetOneData("0", "kuaishou_kfx_app_secret")
  15. kuaishouOfficialExpiresIn := db.MasterListCfgGetOneData("0", "kuaishou_official_expires_in")
  16. kuaishouOfficialRefreshToken := db.MasterListCfgGetOneData("0", "kuaishou_official_refresh_token")
  17. if utils.StrToInt64(kuaishouOfficialExpiresIn) < time.Now().Unix() {
  18. args := map[string]string{
  19. "app_id": kuaishouAppkey,
  20. "grant_type": "refresh_token",
  21. "refresh_token": kuaishouOfficialRefreshToken,
  22. "app_secret": kuaishouAppSecret,
  23. }
  24. token, _ := kuaishou.GetKuaishouRefreshToken(args)
  25. if token == "" {
  26. return
  27. }
  28. accessToken := gjson.Get(token, "access_token").String()
  29. if accessToken == "" {
  30. return
  31. }
  32. teamAccessRefreshToken := gjson.Get(token, "refresh_token").String()
  33. teamAccessTime := time.Now().Unix() + gjson.Get(token, "expires_in").Int() - 60
  34. cache.SetEx("kuaishou:"+kuaishouAppkey, accessToken, int(gjson.Get(token, "expires_in").Int()))
  35. db.MasterListCfgSave("0", "kuaishou_official_access_token", accessToken)
  36. db.MasterListCfgSave("0", "kuaishou_official_expires_in", utils.Int64ToStr(teamAccessTime))
  37. db.MasterListCfgSave("0", "kuaishou_official_refresh_token", teamAccessRefreshToken)
  38. url := "http://izhim.com/?mod=api&act=kuaishou&ctrl=auth"
  39. args1 := map[string]string{
  40. "accessToken": accessToken,
  41. "teamAccessTime": utils.Int64ToStr(teamAccessTime),
  42. "teamAccessRefreshToken": teamAccessRefreshToken,
  43. }
  44. for k, v := range args1 {
  45. if strings.Contains(url, "?") == false {
  46. url += "?" + k + "=" + v
  47. } else {
  48. url += "&" + k + "=" + v
  49. }
  50. }
  51. utils.CurlGet(url, nil)
  52. }
  53. }