From c77c01e099854560f53271448bc501704da9454f Mon Sep 17 00:00:00 2001 From: qi Date: Tue, 5 May 2020 16:59:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1token=E5=92=8C=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=B7=A5=E5=85=B7=E7=B1=BB=E5=B0=81=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/lq/entity/WechatUser.java | 1 - .../java/com/lq/wechat/mode/AccessToken.java | 2 +- .../com/lq/wechat/util/WechatUserUtil.java | 42 +++++++++++++++---- .../lq/wechat/util/token/AccessTokenUtil.java | 1 - .../util/token/AccessTokenUtilTest.java | 18 ++++++-- 5 files changed, 50 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/lq/entity/WechatUser.java b/src/main/java/com/lq/entity/WechatUser.java index 4d8f9d2..c2b87d0 100755 --- a/src/main/java/com/lq/entity/WechatUser.java +++ b/src/main/java/com/lq/entity/WechatUser.java @@ -6,7 +6,6 @@ import java.util.Date; /** * 微信公众号用户 - * Created by qi_liang on 2018/5/24. * @author qi */ public class WechatUser extends IdEntity{ diff --git a/src/main/java/com/lq/wechat/mode/AccessToken.java b/src/main/java/com/lq/wechat/mode/AccessToken.java index 4877aa9..758a914 100755 --- a/src/main/java/com/lq/wechat/mode/AccessToken.java +++ b/src/main/java/com/lq/wechat/mode/AccessToken.java @@ -2,7 +2,7 @@ package com.lq.wechat.mode; /** * @Author: qi - * @Description: + * @Description: token对象 * @Date: Create in 9:28 AM 2019/3/15 */ public class AccessToken { diff --git a/src/main/java/com/lq/wechat/util/WechatUserUtil.java b/src/main/java/com/lq/wechat/util/WechatUserUtil.java index 85b2087..e62dc4f 100755 --- a/src/main/java/com/lq/wechat/util/WechatUserUtil.java +++ b/src/main/java/com/lq/wechat/util/WechatUserUtil.java @@ -1,8 +1,10 @@ package com.lq.wechat.util; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.lq.code.util.HttpKit; import com.lq.entity.WechatUser; +import com.lq.wechat.mode.openid.WechatOpenIdList; /** * @Author: qi @@ -14,7 +16,7 @@ public class WechatUserUtil { /** * 获取关注用户列表 */ - public static final String GET_USER_LIST_URL = "https://api.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN"; + public static final String GET_USER_LIST_URL = "https://api.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&next_openid=NEXT_OPENID"; /** * 获取用户基本信息接口 (get请求) */ @@ -24,9 +26,39 @@ public class WechatUserUtil { */ public static final String BATCHGET_USER_INFO_URL = "https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=ACCESS_TOKEN"; + /** + * 获取关注用户列表 + * @param accessToken 接口凭证 + * @param nextOpenId 下一个openid + * @return + */ + public static String getWechatUserListStr(String accessToken,String nextOpenId){ + String getUrl = GET_USER_LIST_URL.replace("ACCESS_TOKEN",accessToken).replace("NEXT_OPENID",nextOpenId); + String result = HttpKit.get(getUrl); + return result; + } + /** + * 获取关注用户列表 + * @param accessToken + * @param nextOpenId + * @return + */ + public static WechatOpenIdList getWechatUserList(String accessToken,String nextOpenId){ + + String result = getWechatUserListStr(accessToken,nextOpenId); + WechatOpenIdList wechatOpenIdList = JSON.parseObject(result,WechatOpenIdList.class); + return wechatOpenIdList; + } + + /** + * 获取微信用户资料 + * @param accessToken + * @param openId + * @return + */ public static String getWechatUserStr(String accessToken,String openId){ - String url = GET_USER_INFO_URL.replace("ACCESS_TOKEN",accessToken).replace("OPENID","openId"); + String url = GET_USER_INFO_URL.replace("ACCESS_TOKEN",accessToken).replace("OPENID",openId); String result = HttpKit.get(url); return result; }; @@ -43,10 +75,4 @@ public class WechatUserUtil { return wechatUser; } - public static void main(String[] args) { - String token = "31_uTuXD_IEbECUYQch9JQxyI1qlLMEh-fRefmbjhVAaM0B6cwnGGBbbwZAYLDhKcQhRhZNekxmzO5YkfXWJQsdNmuetuI0lIAF7b6fcf1K_kf9uOyU_zxa7W3evv2cJD5m9fLyT_mr8Fz7laCeISTaAHAUEF"; - String getUrl = GET_USER_LIST_URL.replace("ACCESS_TOKEN",token); - String result = HttpKit.get(getUrl); - System.out.println(result); - } } diff --git a/src/main/java/com/lq/wechat/util/token/AccessTokenUtil.java b/src/main/java/com/lq/wechat/util/token/AccessTokenUtil.java index e90477a..9e233f6 100644 --- a/src/main/java/com/lq/wechat/util/token/AccessTokenUtil.java +++ b/src/main/java/com/lq/wechat/util/token/AccessTokenUtil.java @@ -50,5 +50,4 @@ public class AccessTokenUtil { - } diff --git a/src/test/java/com/lq/wechat/util/token/AccessTokenUtilTest.java b/src/test/java/com/lq/wechat/util/token/AccessTokenUtilTest.java index de502fc..c059f10 100644 --- a/src/test/java/com/lq/wechat/util/token/AccessTokenUtilTest.java +++ b/src/test/java/com/lq/wechat/util/token/AccessTokenUtilTest.java @@ -1,17 +1,29 @@ package com.lq.wechat.util.token; +import com.lq.BaseTest; +import com.lq.entity.WechatInfo; import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; -public class AccessTokenUtilTest { +public class AccessTokenUtilTest extends BaseTest { + + @Autowired + private AccessTokenUtil accessTokenUtil; @Test public void getAccessToken() { - - String result = AccessTokenUtil.getAccessToken("wx759184412abd6599","3197674021ad999f87273ed79a752212"); + String result = AccessTokenUtil.getAccessToken("wx76ca7130852c4baa","d87125562b8e60618bc7b3120dfe3583"); System.out.println(result); } @Test public void getAccessToken1() { + WechatInfo wechatInfo = new WechatInfo(); + wechatInfo.setAppId("wx76ca7130852c4baa"); + wechatInfo.setAppSecpet("d87125562b8e60618bc7b3120dfe3583"); + wechatInfo.setWechatOpenId("gh_50ba8d7a5efc"); + System.out.println("================================="); + String token = accessTokenUtil.getAccessToken(wechatInfo); + System.out.println("token:"+token); } } \ No newline at end of file