1. 程式人生 > >微信公眾號code換取openId

微信公眾號code換取openId

  微信網頁授權的時候,不管是靜默授權還是顯示的使用者點選授權,我們都能夠拿到使用者的code,詳見官方文件

  拿到使用者的code之後我們就可以根據我們的已有的appid和sercet拿到openId。

  

public class WeChatUserInfoTest {

    public static String getOpenId(String code, String appId, String appSecret) {
        Map<String, String> params = new HashMap<>();
        params.put("appid", appId);
        params.put("secret", appSecret);
        params.put("code", code);
        params.put("grant_type", "authorization_code");
        String url = "https://api.weixin.qq.com/sns/oauth2/access_token";
        String response = HttpClientUtil.doGet(url, params);
        JSONObject object = JSONObject.parseObject(response);

        String openId = object.getString("openid");
        return openId;
    }
    public static void main(String[] args) {
        String appId = "";//對應的appId
        String appSecret = "";//對應的appSecret
        String code = "";//前端獲取到的使用者code
        String openId = getOpenId(appId, appSecret, code);
        System.out.println(openId);
    }
}