微信小程序Java后台获取access_token存储数据库并定时更新

最近在学习小程序,做个笔记,希望和大家相互交流学习

小程序地图导航,显示天气源码  https://github.com/zzwwjjdj319/miniProgramAmap

信微小程序猜拳小游戏源码https://gitee.com/sccqcd/wechat_applet_weather_map

微信小程序机票查询源码:https://gitee.com/sccqcd/ticket_inquiries

 

微信小程序Java后台获取access_token存储数据库并定时更新_第1张图片

为了方便大家查看,代码里打“######”就是你们需要替换的代码额

(入了小程序的坑,写一个的accessToken写的不好大家见谅)

1.先获取去你的小程序唯一标识和秘钥,在管理平台去获取就是了 

2.封装请求及参数

3.获取返回值得到的的accessToken 

4.大家都知道的accessToken是有时效性的2小时,每获取一次上次的的accessToken就会失效,为了保证效率我使用了定时器90分钟自动更新一次,小程序每次获取的accessToken就在数据库去获取即可。下面是代码大家看一看

(下一个发微信小程序JS中发送模板消息)

 

	@Lazy(false)
    @Scheduled(cron="0 */90 * * * ? ")   //每90分钟执行一次 
    public void text1() {
		System.out.println("定时任务启动了");
      // 小程序唯一标识 (在微信小程序管理后台获取)  
	    String wxspAppid = "########################";  
	    // 小程序的 app secret (在微信小程序管理后台获取)  
	    String wxspSecret = "########################";
        //这里直接写死就可以,不用改,用法可以去看api
	    String grant_type="client_credential";
        //封装请求数据  
	    String params = "grant_type=" + grant_type + "&secret=" + wxspSecret + "&appid="+ wxspAppid;  
        //发送GET请求
	    String sendGet = HttpRequest.sendGet("https://api.weixin.qq.com/cgi-bin/token", params);
	    // 解析相应内容(转换成json对象)  
	    JSONObject json = new JSONObject(sendGet); 
        //拿到accesstoken 
	   String accesstoken = (String) json.get("access_token");

     
       //下面的操作我是存放到数据库了,大家可以更具自己的业务进行存储
	  /* Date date = new Date();
	   String gmtString = date.toLocaleString();
	       AccessToken Token = new AccessToken();
	       Token.setAccess_token(accesstoken);
	       Token.setUpdate_date(gmtString);
	       
	   mettingService.accessToken(Token);*/
	   System.out.println("定时任务结束了");
    }

配置定时器的applicationContext反式timer.xml对了大家记得引入额我开始写的时候老不执行找半天才发现没有引入,仔细认真很重要













web.xml文件中 

 
    contextConfigLocation
    classpath:applicationContext-*.xml
  

 

你可能感兴趣的:(微信小程序)