微信小程序码生成API——getwxacodeunlimit(使用getWXACodeUnlimit)

一、简介

getwxacodeunlimit接口是微信提供的一个小程序生成码的API,也就是生成微信小程序的二维码。在使用getwxacodeunlimit时,只需要传入需要生成二维码的小程序码参数,并返回对应的微信小程序码URL,支持BMP、JPEG、PNG三种格式生成。这个接口可以进一步帮助开发人员营销、普及或者推广小程序。

二、使用方法

要使用getwxacodeunlimit生成二维码,需要将scene参数传递到API中。scene参数是一个字符串,最大长度为32个字符(不传默认为空字符串),用于携带业务数据,例如小程序码中包含的产品信息、其他参数信息等。使用该接口还需满足以下条件:

(1)接口需要使用小程序的AppID和AppSecret进行授权;

(2)调用该接口的账号需要有小程序的码管理权限。

下面是调用getwxacodeunlimit的代码示例:

const wxRequest = require('request');
const qs = require('qs');

const appid = 'wx35423aa6e7a96af7';
const secret = '30f06ce1c18d211b69f45e657d051a8c';

const scene = 'a=1&b=2';

const apiURL = "https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=";

const params = {
  'access_token': '',
  'path': 'pages/index/index',
  'width': 280,
  'auto_color': true,
  'line_color': '{ "r":0, "g":0, "b":0 }',
  'is_hyaline': false
};

const getAccessToken = () => {
  return new Promise((resolve, reject) => {
    const url = `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appid}&secret=${secret}`;

    wxRequest.get(url, (err, res, body) => {
      if (err) {
        reject(err);
        return;
      }
      const token = JSON.parse(body).access_token;
      resolve(token);
    });
  });
}

getAccessToken().then((token) => {
  const requestURL = apiURL + token;

  params.scene = scene;

  wxRequest.post({
      url: requestURL,
      encoding: null,
      json: params
    },
    (err, res, body) => {
      const base64Img = Buffer.from(body).toString('base64');
      resolve(base64Img);
    });
});

三、参数说明

调用getwxacodeunlimit接口时,需要传递以下参数,下面一一进行解析:

1、access_token:小程序的AccessToken,需要对小程序进行授权才能获取。

2、path:小程序的页面路径(必须是已经发布的小程序页面路径),使用”/”分隔,不能携带参数(参数请放在scene中)。

3、scene:小程序的码参数,最大长度为32个字符,不能包含特殊字符(例如 #,& 等)。

4、width:二维码的宽度,单位为像素,最小为280px,最大为1280px。

5、auto_color:是否自动设置线条的颜色(true 或 false)。

6、line_color:线条的颜色,auto_color 为 false 时必须设置线条颜色值。颜色值使用 RGB 格式,例如 {“r”:”0″,”g”:”0″,”b”:”0″} 表示黑色。

7、is_hyaline:是否需要透明底色(true 或 false)。

四、注意事项

在使用getwxacodeunlimit生成微信小程序码时,需要注意以下几点:

1、获取access_token。 请求API时,必须向微信服务器发送 AccessToken,获取AccessToken需要通过访问微信的获取Token API。Token的获取需要提供appid和secret,系统会返回Token、Token有效时间;

2、生成的小程序码有有效期。生成的小程序码有时效性,有效时长由调用接口时传入的expire_seconds参数决定,默认为30秒,最大不超过2592000秒(即30天);

3、避免相同参数生成不同的微信小程序码。 如果以相同的scene参数调用getwxacodeunlimit接口,返回的值不变;反之亦然。如果需要带参数的二维码,传入的scene参数不同,生成的二维码URL也是不同的;

4、兼容性问题。微信小程序码的兼容性还需要与具体的场景进一步考验。所以,开发人员应该在实际运用场景中进行充分测试,遗漏了再处理。

五、总结

从本文中我们了解了微信小程序码API——getwxacodeunlimit,其是微信小程序的二维码编码生成器的核心。我们也详细地阐明了API的使用方法和各参数的意义,以及使用getwxacodeunlimit过程中需要注意的几个问题。getwxacodeunlimit为小程序的推广和普及提供了极大的便利性,获得更多的用户关注和共享。我们希望这篇文章能够帮助开发人员更全面地了解微信小程序码API的使用,取得更好的效果。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注