◀ 返回目录 05 开发 / ★ 账号与环境记录 账号与环境记录.md

账号与环境记录

版本:v1.0 更新:2026-10-17

为什么要有这份文档 这个项目会用到不止一个账号。中途换账号时,如果没人记清楚 「哪个号干什么用、哪些东西跟着号走、哪些不跟」,就会出现 云环境丢了、数据没了、部署不上去这类事。这份文档就是为了防这个。


一、三个账号的分工

号 应用编号 主体 用途 状态
测试号 wxddf82681664ba8cb 平台发放 只做界面与本地逻辑,不能开通云开发 已停用
开发号 wxfc9e11a38fd11699 个人(王小龙) 开通云开发、跑通后端全流程 云开发已验证可用
上线号 未注册 甲方主体 正式上线 等甲方

开发号已验证:云开发可用

2026-10-17 用开发者工具的命令行实测,两个号对比:

号 命令行结果 退出码
开发号 wxfc9e11a38fd11699 ✔ query env list 0(成功)
测试号 wxddf82681664ba8cb ret: -601059 测试号不能使用云服务 1(失败)

结论:个人主体注册的正式小程序可以开通云开发。 之前"个人主体可能也开不了"的担心排除了。 (当时列表为空,因为环境还没建 —— 能查通就说明有这个能力。)

为什么必须有第二个号

测试号不能开通云开发。 这是平台的硬限制,没有任何设置能打开。

实测证据(用开发者工具的命令行调云环境列表时返回的原文):

"ret": -601059
"errmsg": "测试号不能使用云服务"

官方帮助文档的说法:

微信开发者工具中「云开发」按钮消失/变灰? a. 使用了小程序测试号。目前测试号不支持云开发,请更换正式的小程序账号

而这个项目的后端整个建在云开发上(云函数 + 云数据库 + 云存储,没有自建服务器)。 所以必须有一个正式注册的小程序号,哪怕只是用来开发。

三个号的关系

测试号  ─── 界面与交互开发(已完成)
   │
开发号  ─── 开通云开发、后端联调、真机验证(当前)
   │        主体:个人
   │
上线号  ─── 正式对外(未开始)
            主体:甲方
            卡点:见第五节

二、换号时:哪些跟着号走,哪些不跟

这是这份文档最要紧的一节。 弄反了会白做很多工。

✅ 完全不用改的(代码跟人走,不跟号走)

内容 位置
云函数代码 05_开发/app/cloudfunctions/
共享层(枚举/状态机/权限/返回信封) cloudfunctions/_common/
小程序端代码 05_开发/app/miniprogram/
数据库结构(20 个集合的字段与索引) 04_设计/数据库结构.md
后端 48 项自动化测试 _tools/test_cloud/
视觉规范与全部界面 04_设计/

⚠️ 必须改的(跟着号走)

要改什么 在哪改
应用编号 05_开发/app/project.config.json 的 appid
云环境编号 05_开发/app/miniprogram/app.ts 里的 CLOUD_ENV
云开发环境本身 在新号上重新开通(环境不能跨号搬)

❌ 不迁移的(重新来)

内容 为什么
云数据库里的测试数据 环境重建就是空的,测试数据没有保留价值
云存储里的已上传文件 同上
云函数的历史日志 跟着旧环境,旧环境不用了就没了

三、换号操作步骤(照着做)

前提:新号已完成注册,能登进小程序后台。

① 新号开通云开发
   开发者工具 → 左侧「云开发」→ 开通 → 建一个环境 → 复制「环境编号」

② 改应用编号
   编辑 05_开发/app/project.config.json
   把 "appid" 改成新号的编号

③ 填云环境编号
   编辑 05_开发/app/miniprogram/app.ts
   把 CLOUD_ENV 改成第①步复制的环境编号

④ 建数据集合
   云开发控制台 → 数据库 → 建这 20 个集合:
   users / guides / guide_apply / guide_slots / services / orders /
   order_logs / verify_logs / payments / wallets / wallet_logs /
   withdrawals / reviews / chats / messages / reports / audit_logs /
   spots / configs / admins

⑤ 同步共享层(容易忘,忘了部署上去会缺文件)
   python3 _tools/sync_cloud_common.py

⑥ 部署云函数
   python3 _tools/wxdevtools.py cloud functions deploy \
     --project "D:/微信小程序/05_开发/app" --port 44766 --names order,pay --env <环境编号>

⑦ 验证
   运行后端测试:cd _tools/test_cloud && node run.js
   预期:48 通过 / 0 失败
   然后在开发者工具里点首页的「调用云函数」自检按钮

四、密码和证件放在哪(重要)

这份文档不放任何密码。 上线号的管理员密码、邮箱密码、支付相关账户, 一律不要放进这个项目目录。

原因很实际:项目目录会被打包、会上传到文档站。 多一个地方存密码,就多一个泄漏口。项目里的构建脚本虽然有"可疑文件"检查, 但不该依赖检查来兜底密码安全。

密码请放在:

这份文档只记录「哪个号是干什么的」和「怎么换」,不记录「怎么登进去」。


五、跟账号有关的未决事项

事项 现状 卡谁
开发号的类目 选了「工具 › 预约/报名」 ✅ 已定(个人主体可选、免资质)
上线号的类目 未定 ⚠️ 甲方。审核时会拿类目的资质要求比对页面实际内容
导游资质 未解决 ⚠️ 甲方。《导游人员管理条例》第九条:导游必须经旅行社委派
个体户/企业主体 未办 ⚠️ 甲方。个人主体上线做不了交易类
备案 未办 ⚠️ 上线前必须完成

关于开发号选的「工具 › 预约/报名」,要说清楚一件事: 它只对开发有效。它是如实描述"这是个预约系统",不需要资质,也不冒充持证服务 —— 这一点是对的。但甲方上线时,如果页面上卖的是"由第三方提供的向导陪同服务", 光靠这个类目撑不住,审核员会问"一个工具类目为什么在卖人的服务"。 不要因为开发号过了就以为上线也没问题。


六、本机环境现状(换电脑时照这个重建)

项 值
项目目录 D:\微信小程序\
小程序工程 D:\微信小程序\05_开发\app\
开发者工具 D:\微信小程序\开发者工具\微信web开发者工具\
工具命令行端口 44766(设置 → 安全设置 → 服务端口)
Node / npm v22.23.2 / 10.9.8

常用命令

# 调开发者工具的命令行
python3 _tools/wxdevtools.py <参数>

# 同步共享层(改完 _common 必跑,否则各云函数用的还是旧副本)
python3 _tools/sync_cloud_common.py
python3 _tools/sync_cloud_common.py --check     # 只检查

# 后端本地测试(不需要开发者工具,48 项断言)
cd _tools/test_cloud && node run.js

# 小程序端类型检查
cd 05_开发/app && npm run typecheck

# 重新生成目录并部署文档站
python3 _tools/build_html.py
python3 _tools/build_dist.py
python3 _tools/deploy_cloudflare.py

七、这份文档怎么维护