概述
现在除了用二维码之外,微信还可以为我们生成小程序码,大概长这个样子。
如果要生成 无限制的
小程序码,需要几个步骤
1、小程序某个页面的地址,也即是指定page参数的值;
2、获取access_token;
3、指定scene参数的值;
4、调用 getwxacodeunlimit
接口,并将返回结果存储到一个图片里。
page参数
page参数的值都是以 pages开头的
,后面加上能到导航到某个小程序页面的路径,例如:
pages/xxxxxx
获取access_token
这个比较简单,只需要根据小程序对应的appid和secret以及grant_type三个参数的值,就可以获取到 access_token
。
用JAVA写的话, 伪代码
大概如下:
Map<String,String> params = new HashMap<>();
params.put("grant_type","client_credential");
params.put("appid","xxxxxAppId");
params.put("secret","xxxxxxxAppSecret");
//发起请求
HttpResponse httpResponse = HttpClientUtil.get("https://api.weixin.qq.com/cgi-bin/token",params);
//从response中获取token
String token = httpResponse.getToken();
获取到token后,一般会设置有效期,然后将token 存储到缓存里
,避免每次都得去微信平台获取。
指定scene参数的值
scene的值可以是我们的业务主键,只要小程序内唯一就好。
生成小程序码
有了这几个参数后,就可以用
https://api.weixin.qq.com/wxa/getwxacodeunlimit
接口获取小程序码的内容了。从这个接口获取到内容后,将内容写入到图片里,最后将图片的URL发到小程序端。微信使用 扫一扫
就可以将小程序码识别出来。
使用单独的应用存储图片
在一些稍微大型的公司里,都会有自己的图片服务器,专门用来存储图片的。要读取图片,直接调用接口从图片服务器里读取即可。但是对于一些创业公司来说,通常没有能力也没有时间自己研发一套图片存储服务,通常都是使用第三方平台,例如 七牛
。 七牛
的图片处理还是很不错,将图片上传到 七牛
后,会得到一个图片的url,小程序端只需要解析这个url就可以显示小程序码对应的界面了。