Spring Boot整合WxJava快速实现生成小程序码(springboot做微信小程序步骤)

最近业务给咱们开发同事提了一个很简单的需求-生成小程序码,同事可能是平时写CRUD写多了,听到是不熟悉的领域的东西就觉得有些头大,便来问我如何实现,我说:“这个得看官方说明文档了,然后调接口实现。如果觉得麻烦就找开源组件直接引用即可,比如WxJava”。可能是我表述得不够清楚,同事依然一脸懵逼,感觉甚是复杂。

接下来,我们就整合开源组件WxJavaminiapp版本来快速实现小程序码生成功能。

引入wx-java-miniapp-spring-boot-starter

12345

<dependency> <groupId>com.github.binarywang</groupId> <artifactId>wx-java-miniapp-spring-boot-starter</artifactId> <version>4.4.0</version></dependency>

配置小程序信息

1234567

wx: miniapp: appid: 小程序AppId secret: 小程序secret token: aesKey: msgDataFormat: JSON

如果只是生成小程序码或者获取小程序连接,那便只配置appIdsecret即可。

调用API

小程序官方有三种小程序码的生成方式,WxJava封装了官方的API接口为我们提供三个API的方法:

  1. createQrcode 对应官方的获取小程序二维码接口,生成的小程序码,永久有效,有数量限制,参数带在URL后面
  2. createWxaCode 对应官方的 获取小程序码接口,生成的小程序码,永久有效,有数量限制,参数带在URL后面
  3. createWxaCodeUnlimit 对应官方的获取不限制的小程序码接口,生成的小程序码,永久有效,数量暂无限制,参数需要传到scene中,小程序端需要从query.scene中获取


@Resource
WxMaService wxMaService;

@GetMapping(value = "/generateQrcode/{id}", produces = {MediaType.IMAGE_JPEG_VALUE, MediaType.IMAGE_PNG_VALUE})
public byte[] generateQrcode(HttpServletRequest request,@PathVariable("id")String id) throws WxErrorException {
return wxMaService.getQrcodeService().createWxaCodeBytes("路径?id=" id,"",640,true,null,false);
}

Spring Boot整合WxJava快速实现生成小程序码(springboot做微信小程序步骤)

这里我只是简单的模拟API的调用方式,如果使用有数量限制的API接口,我们需要将生成好的图片上传到文件服务器,或者是保存下来。因为资源有限,我们得节约一点。

123456

@GetMapping(value = "/generateQrcode/{id}") public String generateQrcode(HttpServletRequest request,@PathVariable("id")String id) throws WxErrorException { File qrcode= wxMaService.getQrcodeService().createWxaCode("路径?id=" id); //保存或者上传文件 return "图片url" ; }

默认图片大小为430像素,颜色自动调整,可以通过WxMaCodeLineColor对象来设置生成的颜色,

12345678910

@GetMapping(value = "/generateQrcode/{id}")public String generateQrcode(HttpServletRequest request,@PathVariable("id")String id) throws WxErrorException { WxMaCodeLineColor color=new WxMaCodeLineColor(); //设置绿色 color.setB("0"); color.setG("255"); color.setR("0"); File qrcode= wxMaService.getQrcodeService().createWxaCode("路径?id=" id,"",1280,false, color,false); //保存或者上传文件 return "图片url" ;}

这里需要注意的是,要生成的小程序必须是已发版,如果是调用的createWxaCodeUnlimit方法,路径也必须在正式存在,否则会提示异常

1

{"errcode":41030,"errmsg":"invalid page rid: 632a72c5-0713dffe-27652c1f"}

如今,开源的组件越来越多,其可帮助我们提升开发效率,但是我们也不能过渡依赖于这些组件,完成工作交差之后就停滞不前,在使用它们的同时也需要多去学习、思考。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月9日 下午12:08
下一篇 2024年5月9日 下午12:20

相关推荐

  • 项目管理软件功能

    项目管理软件功能 项目管理软件是一种工具,可以帮助项目经理和团队更好地管理项目进度、质量和成本。本文将介绍项目管理软件的一些主要功能。 1. 任务管理:任务管理功能可以帮助项目经理…

    科研百科 2024年7月28日
    43
  • 【基层亮点巡礼②】银川监狱:以品牌创建推动党建与业务深度融合

    党支部是党在基层全部工作的战斗力和基础。2021年以来,银川监狱党委坚持以习近平新时代中国特色社会主义思想为指导,把创建党建服务品牌作为提升党建质量的重要抓手,认真贯彻落实厅局党委…

    科研百科 2023年7月3日
    186
  • 项目管理smart

    项目管理smart:实现高效、可重复、可持续的项目 随着现代项目管理方法的不断发展,越来越多的人开始重视“smart”原则的应用。smart原则是指一些具体的、可量化的规则和技巧,…

    科研百科 2024年5月26日
    85
  • 科研项目经济成本指标

    科研项目经济成本指标 科研项目经济成本指标是衡量科研项目预算和实际支出的重要指标。经济成本是指与科研项目相关的所有费用,包括人员费用、物资费用、设备费用、租赁费用、场地费用、运输费…

    科研百科 2024年10月22日
    9
  • 共罚没超23亿!透视2023年银行业罚单:信贷、内控仍是重灾区(2021年上半年银行业罚单)

    《国际金融报》记者根据同花顺iFinD的数据和监管部门披露的最新罚单统计,截至12月13日发稿前,今年以来(以罚单披露日期计算)至少有1764家银行业机构(包括各分支机构在内)收到…

    科研百科 2024年1月20日
    136
  • 办公软件市场分析

    办公软件市场分析 随着数字化时代的到来,办公软件市场的需求不断增加。下面将对办公软件市场进行的分析。 市场概述 办公软件市场是一个庞大的市场,涵盖了各种办公软件,如文字处理软件、电…

    科研百科 2025年1月5日
    0
  • 如何评价一科研项目

    如何评价科研项目 科研项目是学术界的一个重要组成部分,是科学家们为了实现特定目标而开展的努力。评价科研项目需要考虑多个因素,包括项目的贡献、创新性、实用性和可行性等。本文将针对如何…

    科研百科 2024年8月10日
    26
  • 科研立项管理平台

    科研立项管理平台 科研立项管理平台是一种用于管理科研项目的软件平台,它可以帮助研究人员更好地组织、管理和协调他们的研究工作。科研立项管理平台的优点包括: 1. 自动化管理:科研立项…

    科研百科 2024年8月20日
    44
  • 数学科研项目选题要求是什么意思(数学科研项目选题要求是什么)

    数学科研项目选题要求是什么 数学是一门非常广泛的学科,涵盖了许多不同的领域,包括数学本身、应用数学、统计学、计算机科学等等。因此,数学科研项目选题的要求也有所不同。 在选择数学科研…

    科研百科 2024年8月4日
    49
  • 广州项目管理系统

    广州项目管理系统 随着现代项目管理的日益复杂,广州项目管理系统成为了项目管理中不可或缺的一部分。一个好的项目管理系统可以提高项目管理的效率和质量,降低风险,并确保项目按时、按质、按…

    科研百科 2024年8月19日
    37