zoukankan      html  css  js  c++  java
  • Java微信公众平台开发之AccessToken获取

    顺便说一下微信公共测试号的申请,不需要准备任何材料,除了部分需要认证的接口,大部分都可以调用,提供一下链接

    一、什么是access_token

    access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效官方文档

    调用接口时,请登录“微信公众平台-开发-基本配置”提前将服务器IP地址添加到IP白名单中,点击查看设置方法,否则将无法调用成功

    二、获取并缓存access_token

    由于一天获取access_token次数有限,不能即拿即用。官方推荐使用使用中控服务器统一获取和刷新access_token,缓存方式自行选择。

    本人用的是Redis缓存Windows下安装并设置Redis

    获取方法

    public static final String GET_ACCESS_TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token";
    /**
     * 获取授权凭证token
     * 
     * @param key 应用appid
     * @param secret 应用密匙
     * @return json格式的字符串
     */
    public static String getAccessToken(String appid, String secret) {
    	TreeMap<String, String> map = new TreeMap<String, String>();
    	map.put("grant_type", "client_credential");
    	map.put("appid", appid);
    	map.put("secret", secret);
    	String json = HttpReqUtil.HttpDefaultExecute(SystemConfig.GET_METHOD, WechatConfig.GET_ACCESS_TOKEN_URL, map, "");
    	String result = null;
    	AccessToken accessToken = JsonUtil.fromJsonString(json, AccessToken.class);
    	if (accessToken != null) {
    		result = accessToken.getAccess_token();
    	}
    	return result;
    }

    缓存方法:略

    详细源码



    本文为Phil Jing原创文章,未经博主允许不得转载,如有问题请直接回复或者加群。
  • 相关阅读:
    Freemarker空值判断
    php集成开发环境IDE
    mysql卸载
    Apache网站根目录
    冒泡排序
    线程操作
    通过滚轮改变图片大小
    Timer计时器
    写异常日志
    异常处理
  • 原文地址:https://www.cnblogs.com/phil_jing/p/15615889.html
Copyright © 2011-2022 走看看