Files
training/miniprogram/scripts/set-experience.js
T
Pine b56476c69e chore(mini): 上传描述标注PineBot,新增设为体验版脚本
- upload 脚本描述改为 'PineBot 自动上传'
- 新增 scripts/set-experience.js:调用微信 API 将最新开发版设为体验版(需 WX_APPSECRET 环境变量)
- package.json 新增 set-experience script
2026-09-01 21:52:03 +08:00

62 lines
2.0 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 将最新上传的开发版设为体验版
* 用法:WX_APPSECRET=你的AppSecret node scripts/set-experience.js
* 或在 package.json 里配置后:npm run set-experience
*/
const https = require('https');
const APPID = 'wx349f46ac71770777';
const APPSECRET = process.env.WX_APPSECRET;
if (!APPSECRET) {
console.error('错误:请设置环境变量 WX_APPSECRET(微信公众平台 -> 开发 -> 开发管理 -> 开发设置 -> AppSecret');
process.exit(1);
}
function request(method, path, body) {
return new Promise((resolve, reject) => {
const data = body ? JSON.stringify(body) : null;
const req = https.request({
hostname: 'api.weixin.qq.com',
path,
method,
headers: data ? { 'Content-Type': 'application/json', 'Content-Length': Buffer.byteLength(data) } : {},
}, (res) => {
let raw = '';
res.on('data', (c) => (raw += c));
res.on('end', () => {
try { resolve(JSON.parse(raw)); } catch { resolve(raw); }
});
});
req.on('error', reject);
if (data) req.write(data);
req.end();
});
}
(async () => {
try {
// 1. 获取 access_token
const tokenRes = await request('GET', `/cgi-bin/token?grant_type=client_credential&appid=${APPID}&secret=${APPSECRET}`);
if (!tokenRes.access_token) {
console.error('获取 access_token 失败:', JSON.stringify(tokenRes));
process.exit(1);
}
console.log('access_token 获取成功');
// 2. 设为体验版
const result = await request('POST', `/wxa/version_control/release?access_token=${tokenRes.access_token}`, {
action: 'set_experience',
});
console.log('设置体验版结果:', JSON.stringify(result));
if (result.errcode === 0) {
console.log('✓ 已成功设为体验版');
} else {
console.log('提示:若 errcode 表示接口不支持,请在微信公众平台 -> 管理 -> 版本管理 -> 开发版本 中手动点击「选为体验版」');
}
} catch (e) {
console.error('执行失败:', e.message);
process.exit(1);
}
})();