【微信小程序】4、SpringBoot整合WxJava生成小程序码

1、官方文档

获取小程序码,获取不限制的小程序码,获取小程序二维码

2、获取小程序码

该接口用于获取小程序码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序码,永久有效,有数量限制,详见获取小程序码。

注意事项:

  • 如果调用成功,会直接返回图片二进制内容,如果请求失败,会返回 JSON 格式的数据。
  • POST 参数需要转成 JSON 字符串,不支持 form 表单提交。
  • 与 createQRCode 总共生成的码数量限制为 100,000,请谨慎调用。已生成码数量参考HTTP Header的Num-Used。

3、获取不限制的小程序码

该接口用于获取小程序码,适用于需要的码数量极多的业务场景。通过该接口生成的小程序码,永久有效,数量暂无限制。

注意事项:

  • 如果调用成功,会直接返回图片二进制内容,如果请求失败,会返回 JSON 格式的数据。
  • POST 参数需要转成 JSON 字符串,不支持 form 表单提交。
  • 调用分钟频率受限(5000次/分钟),如需大量小程序码,建议预生成

4、获取小程序二维码

获取小程序二维码,适用于需要的码数量较少的业务场景。通过该接口生成的小程序码,永久有效,有数量限制。

注意事项:

  • 如果调用成功,会直接返回图片二进制内容,如果请求失败,会返回 JSON 格式的数据。
  • POST 参数需要转成 JSON 字符串,不支持 form 表单提交。
  • 接口只能生成已发布的小程序的二维码。开发版的带参二维码可以在开发者工具预览时生成。
  • 与 wxacode.get 总共生成的码数量限制为 100,000,请谨慎调用。

5、生成小程序码

java 复制代码
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.bean.WxMaCodeLineColor;
import cn.binarywang.wx.miniapp.constant.WxMaConstants;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import java.io.File;
import java.io.FileOutputStream;

@Slf4j
@Service
@RequiredArgsConstructor
public class WxQrcodeServiceImpl {

    private final WxMaService wxMaService;

    public void getWxaCode() throws Exception {
        String path = "pages/station/stationDetail?stationId=10001";
        String filePath = "E:\\DeskTop\\qrcode" + File.separator + "10001.jpg";
        // 正式版
        String envVersion = WxMaConstants.DEFAULT_ENV_VERSION;
        // 体验版
        // String envVersion = WxMaConstants.MiniProgramState.TRIAL;
        // 开发版
        // String envVersion = WxMaConstants.MiniProgramState.DEVELOPER;
        byte[] bytes = wxMaService.getQrcodeService().createWxaCodeBytes(path, envVersion, 430, false, new WxMaCodeLineColor(), false);
        try (FileOutputStream fos = new FileOutputStream(filePath)) {
            fos.write(bytes);
        }
    }
}

6、小程序端获取参数

javascript 复制代码
/**
 * 生命周期函数--监听页面加载
 */
onLoad(options) {
  let stationId = options.stationId
}

在 onLoad 方法中,从 options 对象中就能拿到我们小程序码设置的参数了。

如您在阅读中发现不足,欢迎留言!!!

相关推荐
计算机毕设定制辅导-无忧学长9 小时前
《基于微信小程序的居家医疗陪护预约系统设计与实现》
java·spring boot·微信小程序·uniapp·居家医疗陪护预约系统
小郎君65816 小时前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·spring cloud
jktantan18 小时前
注解式脱敏:用 Jackson 的 ContextualSerializer 做字段级策略(一)
spring boot·后端·算法·spring cloud·系统架构
露天赏雪1 天前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
大数据技术派1 天前
我用AI写代码,做了3个小玩意儿
后端·微信小程序
蜗牛8752 天前
为 Spring Boot 团队做一个 Elasticsearch 查询工作台:六种模式、语义补全与浏览器直连
spring boot
养军博客2 天前
Spring Boot 3.x + Spring Security 6.x 整合 JWT 实战:jjwt 与 java-jwt 两种工具库详解
java·spring boot·springsecurity
txxzjmzlh2 天前
SpringBoot 统⼀功能处理
java·spring boot·后端
秋天的怀念_David2 天前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法
余槐i3 天前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化