如何使用Java实现微信公众号获取临时二维码功能

发布时间:2021-09-27 17:50 来源:亿速云 阅读:0 作者:小新 栏目: 开发技术

这篇文章给大家分享的是有关如何使用Java实现微信公众号获取临时二维码功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

具体如下:

1.获取access_token 上一篇文章写了 就不赘述了;

2.根据access_token获取二维码ticket,获取到了二维码ticket就基本山是成功了;

3.通过ticket换取二维码,其实就是拼接url和ticket。

public class WeChatQRCodeTest {  public static void main(String[] args) {    String qrcodeUrl = "";    try {      String accessToken = "15_Yws71Wr-Fk9DW5acDWvyn3YWTfp_jkuBxCl8Hue5hRrB064FVrYSPZgNqdxpw1WKVbp0c7DIerwzGa2iuJDI2er3q7ntf" +          "WNteHZbpSXwCLnUh0p16UQvUhisKKqTrPAMQQdHXklTywmQ6L8MVKNiAJAAPS";      JSONObject jsonObject = new JSONObject();      jsonObject.put("expire_seconds", 2592000);      jsonObject.put("action_name", "QR_STR_SCENE");      JSONObject actionInfo = new JSONObject();      JSONObject scene = new JSONObject();      scene.put("scene_str", "二维码中携带的信息");      actionInfo.put("scene", scene);      jsonObject.put("action_info", actionInfo);      String url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + accessToken;      String result = HttpClientUtil.doPostJson(url, jsonObject.toJSONString());      JSONObject resultJson = JSONObject.parseObject(result);      String ticket = resultJson.getString("ticket");      /**       * 实际应用中可以根据过期时间存储ticket       */      Integer expire_seconds = resultJson.getInteger("expire_seconds");      qrcodeUrl = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + URLEncoder.encode(ticket, "UTF-8");    } catch (UnsupportedEncodingException e) {      e.printStackTrace();    }    System.out.println(qrcodeUrl);  }}

代码如上,这里HttpClientUtil即上篇博客的HttpClientUtil,access_token是获取到写死的,单接口测试 可以使用微信提供的网页测试工具获取。

scene_str里面对应的值即我们需要携带在二维码中的信息。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自互联网转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系QQ:712375056 进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。