java.lang.Object
io.github.mangocrisp.spring.taybct.tool.wechat.config.WechatConfig

@AutoConfiguration @ConfigurationProperties("taybct.wechat") public class WechatConfig extends Object
微信操作参数配置
从以下版本开始:
1.0.0
  • 构造器详细资料

    • WechatConfig

      public WechatConfig()
  • 方法详细资料

    • getState

      public String getState()
    • getAuthorizationUrl

      public String getAuthorizationUrl(String state)
    • getWxCodeUrl

      public String getWxCodeUrl(String state)
      第一步:请求CODE
    • getWxAccessTokenUrl

      public String getWxAccessTokenUrl(String code, String state)
      第二步:通过 code 获取access_token
      参数:
      code - 微信扫码后返回的 code 填写第一步获取的 code 参数
      state - 微信扫码之前平台传给微信的 code,微信应该要原样返回,如果返回的 state 和之前传的不一致,就报错
    • getWxAccessToken

      public com.alibaba.fastjson2.JSONObject getWxAccessToken(String wxAccessTokenUrl, String state)
      获取 access token 正确的返回: { "access_token":"ACCESS_TOKEN", "expires_in":7200, "refresh_token":"REFRESH_TOKEN", "openid":"OPENID", "scope":"SCOPE", "unionid": "o6_bmasdasdsad6_2sgVt7hMZOPfL" }
    • getBaseRefreshTokenUrl

      public String getBaseRefreshTokenUrl(String refresh_token)
      获取到刷新 token 的 url
      参数:
      refresh_token - 之前获取 access token 的时候返回的 refresh_token
    • refreshToken

      public com.alibaba.fastjson2.JSONObject refreshToken(String refreshTokenUrl, String state)
      刷新 token 获取到新的 access_token
      参数:
      refreshTokenUrl - 刷新 token 的地址
      state - 储存 redis 的唯一标识
    • getUserInfoUrl

      public String getUserInfoUrl(String accessToken, String openid)
      第三步:获取用户信息
      参数:
      accessToken - 第二步获取到的 access_token
      openid - 同上
    • getUserInfo

      public com.alibaba.fastjson2.JSONObject getUserInfo(String userInfoUrl, String state)
      获取用户信息 正确的返回: { "country": "", "province": "", "city": "", "openid": "", "sex": 0, "nickname": "ㅤ", "headimgurl": "头像", "language": "", "privilege": [

      ] }

      参数:
      userInfoUrl - 获取用户信息的 uri
      state - 存储 redis 唯一标识
    • signatureCheck

      public String signatureCheck(String signature, String timestamp, String nonce, String echostr)
      验证消息的确来自微信服务器
      参数:
      signature - 签名,也就是加密后的我们的 signatureToken
      timestamp - 时间戳
      nonce - 随机数
      echostr - 随机字符串
    • sort

      public static String sort(String token, String timestamp, String nonce)
      排序方法