1. 在微信后台下载秘钥。
"微信公众平台-开发-开发设置"下载代码上传密钥,并配置 IP 白名单。打开后只有白名单中的 IP 才能调用相关接口。
获得密钥文件一般为,private.${appid}.key
。
2. 安装上传工具。
在项目中安装 miniprogram-ci。
npm install miniprogram-ci --save
3. 放置密钥
在 package.json
文件中添加上传密钥所在路径。本文新建 key
文件夹存放该密钥
// package.json
......
"uploadKey": "/key/private.wxappid.key",
......
4. 添加上传脚本。
在项目根目录下添加 upload.wx.js
文件。
// upload.wx.js
const ci = require('miniprogram-ci')
// 从 package.json 中读取 version,description 和 uploadKey
let { version, description: desc, uploadKey } = require('./package.json')
// 读取小程序 appid
let { appid } = require('./project.config.json')
if (!version) version = '1.0.0'
if (!desc) desc = new Date() + '上传'
if (!appid) appid = 'touristid'
if (!uploadKey) uploadKey = `/key/private.${appid}.key`
// 创建项目对象
const project = new ci.Project({
appid, // 小程序appid
type: 'miniProgram', // 类型,小程序或小游戏
projectPath: process.cwd(), // 项目路径
privateKeyPath: process.cwd() + uploadKey, // 密钥路径
ignores: ['node_modules/**/*'], // 忽略的文件
})
// 调用上传方法
ci.upload({
project,
version,
desc,
setting: {
es6: true, // 是否 "es6 转 es5"
minify: true, // 是否压缩代码
},
}).then(res => {
console.log(res)
console.log('上传成功')
}).catch(error => {
if (error.errCode == -1) {
console.log('上传成功')
}
console.log(error)
console.log('上传失败')
process.exit(-1)
})
5. 执行上传
node upload.wx.js
6. ”上传成功“!
更多信息请参考微信小程序官方文档:
https://developers.weixin.qq.com/miniprogram/dev/devtools/ci.html