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原创文章,未经博主允许不得转载,如有问题请直接回复或者加群。
  • 相关阅读:
    Go语言使用grpc
    Go语言中使用protobuf
    proto3语法
    golang标准库io
    走近docker--容器生态系统
    编译技术图式(第四章 语义分析)
    计算机组成原理与结构图示(存储器设计)
    微机原理与汇编接口图式(第一章 数制)
    编译技术图式(第四章 语法分析)03自下而上的语法分析
    计算机组成原理和结构图式(第四章 存储器子系统)
  • 原文地址:https://www.cnblogs.com/phil_jing/p/15615889.html
Copyright © 2011-2022 走看看