You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.1 KiB
45 lines
1.1 KiB
const QRCode = require('qrcode');
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
// 网页 URL
|
|
const url = 'http://8.137.125.67:3008/';
|
|
|
|
// 生成二维码并保存为图片
|
|
async function generateQRCode() {
|
|
try {
|
|
console.log('正在生成二维码...');
|
|
|
|
// 生成二维码数据
|
|
const qrData = await QRCode.toDataURL(url, {
|
|
width: 300,
|
|
margin: 1,
|
|
color: {
|
|
dark: '#000000',
|
|
light: '#FFFFFF'
|
|
}
|
|
});
|
|
|
|
// 提取 base64 数据
|
|
const base64Data = qrData.replace(/^data:image\/png;base64,/, '');
|
|
const buffer = Buffer.from(base64Data, 'base64');
|
|
|
|
// 保存为图片文件
|
|
const qrPath = path.join(__dirname, 'qrcode.png');
|
|
fs.writeFileSync(qrPath, buffer);
|
|
|
|
console.log(`二维码生成成功!保存路径:${qrPath}`);
|
|
console.log(`二维码包含的 URL:${url}`);
|
|
console.log('请使用微信等扫描工具扫描此二维码进入程序。');
|
|
|
|
} catch (error) {
|
|
console.error('生成二维码失败:', error.message);
|
|
}
|
|
}
|
|
|
|
// 执行生成二维码
|
|
if (require.main === module) {
|
|
generateQRCode();
|
|
}
|
|
|
|
module.exports = { generateQRCode };
|
|
|