- Standardize comment punctuation - Remove unnecessary spaces - Improve code readability - No functional changes - Maintain responseType setting
33 lines
983 B
TypeScript
33 lines
983 B
TypeScript
import axios from "axios";
|
||
import { writeFileSync } from "fs";
|
||
import config from "./create_qr_code.json";
|
||
|
||
const generateQRCode = async (path: string, scene: string) => {
|
||
const url = `https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=${config.access_token}`;
|
||
const params = {
|
||
scene: scene, // 参数,格式为json字符串
|
||
page: path, // 扫码后跳转的小程序页面路径
|
||
width: 430, // 二维码的宽度
|
||
};
|
||
|
||
try {
|
||
const response = await axios({
|
||
method: "POST",
|
||
url: url,
|
||
data: params,
|
||
responseType: "arraybuffer", // 重要: 需要设置响应类型为arraybuffer
|
||
});
|
||
|
||
// 将response.data(一个Buffer)写入文件
|
||
writeFileSync("qrcode.png", response.data);
|
||
console.log("小程序码已生成");
|
||
} catch (error) {
|
||
console.error("生成小程序码失败", error);
|
||
}
|
||
};
|
||
|
||
generateQRCode(
|
||
"pages/connect-wifi/connect-wifi",
|
||
`{"SSID":"${config.ssid}","password":"${config.password}"}`
|
||
);
|